/** * */ package cz.cuni.mff.peckam.java.origamist.modelstate.arguments; import cz.cuni.mff.peckam.java.origamist.gui.editor.PickMode; import cz.cuni.mff.peckam.java.origamist.gui.editor.StepEditor; import cz.cuni.mff.peckam.java.origamist.utils.LocalizedString; /** * A line argument that can only be filled with an existing line. * * @author Martin Pecka */ public class ExistingLineArgument extends LineArgument { /** * @param required If true, this argument is required. * @param resourceBundleKey The key in "editor" resource bundle describing this operation argument. */ public ExistingLineArgument(boolean required, String resourceBundleKey) { super(required, resourceBundleKey); } @Override public PickMode preferredPickMode() { return PickMode.LINE; } @Override public void readDataFromObject(StepEditor editor) { if (editor.getChosenExistingLine() != null) this.line = editor.getChosenExistingLine(); if (line != null) support.firePropertyChange(COMPLETE_PROPERTY, false, true); } @Override protected String getUserTipPart() { return new LocalizedString(OperationArgument.class.getName(), "existing.line.user.tip").toString(); } }