package org.isatools.isacreator.protocolselector; import org.isatools.isacreator.api.utils.StudyUtils; import org.isatools.isacreator.autofilterfield.AutoCompleteUI; import org.isatools.isacreator.autofilterfield.DefaultAutoFilterCellEditor; import org.isatools.isacreator.model.Protocol; import org.isatools.isacreator.spreadsheet.Spreadsheet; /** * Created by the ISA team * * @author Eamonn Maguire (eamonnmag@gmail.com) * <p/> * Date: 08/08/2011 * Time: 12:24 */ public class ProtocolSelectorCellEditor extends DefaultAutoFilterCellEditor<Protocol> { public ProtocolSelectorCellEditor(Spreadsheet spreadsheet) { super(spreadsheet); } @Override protected void updateContent() { if (StudyUtils.isModified(getStudyFromSpreadsheet().getStudyId())) { selector.updateContent(getStudyFromSpreadsheet().getProtocols()); } } @Override public void performAdditionalTasks() { // nothing else to do... } public void instantiateSelectorIfRequired() { if (selector == null) { selector = new AutoCompleteUI<Protocol>(this, getStudyFromSpreadsheet().getProtocols(), new ProtocolSelectorListCellRenderer()); selector.createGUI(); selector.setLocation(calculateDisplayLocation(currentTable, currentRow, currentColumn)); } updateContent(); } }