package urgrip.programnodes; import com.ur.urcap.api.contribution.ProgramNodeContribution; import com.ur.urcap.api.contribution.program.ProgramAPIProvider; import com.ur.urcap.api.domain.ProgramAPI; import com.ur.urcap.api.domain.data.DataModel; import com.ur.urcap.api.domain.script.ScriptWriter; import com.ur.urcap.api.domain.undoredo.UndoRedoManager; import com.ur.urcap.api.domain.userinteraction.keyboard.KeyboardInputCallback; import com.ur.urcap.api.domain.userinteraction.keyboard.KeyboardInputFactory; import com.ur.urcap.api.domain.userinteraction.keyboard.KeyboardNumberInput; public class GripperCoupleNodeContribution implements ProgramNodeContribution { private static final String KEY_ACTION = "KEY_ACTION"; private final ProgramAPI programAPI; private final UndoRedoManager undoRedoManager; private final KeyboardInputFactory keyboardFactory; private final GripperCoupleNodeView view; private final DataModel model; public GripperCoupleNodeContribution(ProgramAPIProvider apiProvider, GripperCoupleNodeView view, DataModel model) { this.programAPI = apiProvider.getProgramAPI(); this.undoRedoManager = apiProvider.getProgramAPI().getUndoRedoManager(); this.keyboardFactory = apiProvider.getUserInterfaceAPI().getUserInteraction().getKeyboardInputFactory(); this.view = view; this.model = model; } @Override public void openView() { view.setAction(model.get(KEY_ACTION, "COUPLE")); } @Override public void closeView() { model.set(KEY_ACTION, view.getAction()); } @Override public String getTitle() { return "Gripper Couple "; } @Override public void generateScript(ScriptWriter writer) { } @Override public boolean isDefined() { return true; } }