teichmann@5861: /* Copyright (C) 2011, 2012, 2013 by Bundesanstalt für Gewässerkunde teichmann@5861: * Software engineering by Intevation GmbH teichmann@5861: * teichmann@5993: * This file is Free Software under the GNU AGPL (>=v3) teichmann@5861: * and comes with ABSOLUTELY NO WARRANTY! Check out the teichmann@5993: * documentation coming with Dive4Elements River for details. teichmann@5861: */ teichmann@5861: teichmann@5835: package org.dive4elements.river.client.client.ui; ingo@20: ingo@20: import java.io.Serializable; ingo@20: ingo@20: import com.smartgwt.client.widgets.Canvas; ingo@788: import com.smartgwt.client.widgets.layout.VLayout; ingo@20: teichmann@5835: import org.dive4elements.river.client.shared.model.Data; teichmann@5835: import org.dive4elements.river.client.shared.model.DataList; teichmann@5835: import org.dive4elements.river.client.shared.model.Artifact; teichmann@5835: import org.dive4elements.river.client.shared.model.Collection; ingo@20: aheinecke@6232: import org.dive4elements.river.client.client.FLYS; aheinecke@6232: ingo@20: /** ingo@20: * This interface describes a method that creates a Canvas element displaying ingo@20: * DataItems for a current state of the artifact. ingo@20: * ingo@20: * @author Ingo Weinzierl ingo@20: */ ingo@20: public interface UIProvider extends Serializable { ingo@20: ingo@20: /** ingo@20: * This method creates a Canvas element showing the DataItems in ingo@20: * data. ingo@20: * ingo@51: * @param data The DataList object. ingo@20: * ingo@20: * @return the Canvas showing the Data. ingo@20: */ ingo@51: public Canvas create(DataList data); ingo@53: ingo@53: ingo@53: /** ingo@53: * This method creates a Canvas element showing the old Data objects in the ingo@53: * DataList data. ingo@53: * ingo@53: * @param dataList The DataList which elements should be displayed. ingo@53: * ingo@53: * @return a Canvas displaying the Data. ingo@53: */ ingo@53: public Canvas createOld(DataList dataList); ingo@83: ingo@83: aheinecke@6232: public Canvas createHelpLink(DataList dataList, Data data, FLYS instance); ingo@2500: ingo@2500: ingo@83: /** ingo@83: * This method injects a container that is used to position helper widgets. ingo@83: * ingo@83: * @param container A container that is used to position helper widgets. ingo@83: */ ingo@788: public void setContainer(VLayout container); raimund@233: raimund@233: raimund@233: /** raimund@233: * Sets an artifact that contains the status data information for a project. raimund@233: * raimund@233: * @param artifact The artifact containing status information. raimund@233: */ raimund@233: public void setArtifact(Artifact artifact); ingo@909: ingo@909: ingo@909: /** ingo@909: * Sets the parent Collection of the Artifact. ingo@909: */ ingo@909: public void setCollection(Collection collection); raimund@915: raimund@915: public void setParameterList(ParameterList list); ingo@20: } ingo@20: // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :