package org.gcube.portlets.user.reportgenerator.client.targets; import java.util.ArrayList; import org.gcube.portlets.d4sreporting.common.shared.MasterSequence; import org.gcube.portlets.d4sreporting.common.shared.MasterSequenceList; import org.gcube.portlets.d4sreporting.common.shared.RepeatableSequence; import org.gcube.portlets.user.reportgenerator.client.Presenter.Presenter; import org.gcube.portlets.user.reportgenerator.client.model.TemplateComponent; import com.google.gwt.user.client.ui.Composite; import com.google.gwt.user.client.ui.VerticalPanel; /** * * @author massi * */ public class ClientMasterSequence extends Composite implements ClientSequence { protected ArrayList groupedComponents = new ArrayList(); private VerticalPanel myPanel = new VerticalPanel(); protected RepeatableSequence repSequence; protected RepeatableSequence originalSequence = new RepeatableSequence(); /** * s * @param p * @param ms */ public ClientMasterSequence(Presenter p, MasterSequenceList msl) { for (MasterSequence seq : msl.getSequences()) { if (seq.isSelected()) { repSequence = seq; } } SequenceWidget seqW = new SequenceWidget(p, this, repSequence, true, false); seqW.enableClear(); myPanel.add(seqW); initWidget(myPanel); } @Override public ArrayList getGroupedComponents() { return groupedComponents; } @Override public boolean add(RepeatableSequence sequence) { return false; } @Override public SequenceWidget remove(SequenceWidget toRemove) { myPanel.remove(toRemove); for (TemplateComponent tc : toRemove.getSeqGroupedComponents()) { groupedComponents.remove(tc); } return toRemove; } }