01: package org.osbl.client.wings.form.layouter;
02:
03: import org.wings.SContainer;
04: import org.wings.SComponent;
05: import org.osbl.client.wings.form.ComponentProvider;
06:
07: import java.util.List;
08:
09: /**
10: * A Layouter will arrange SComponents provided by ComponentProvider according to a structural description.
11: */
12: public interface Layouter {
13: /**
14: * Construct a container according to the structural description.
15: * @param componentProvider fetch components from here
16: * @return the container
17: */
18: SContainer build(ComponentProvider componentProvider);
19:
20: List<SComponent> getVisibles();
21:
22: List<SComponent> getInvisibles();
23:
24: void addVisibilityListener(VisibilityListener listener);
25:
26: void removeVisibilityListener(VisibilityListener listener);
27:
28: List<SComponent> getFocusableComponents();
29:
30: void setApplicability(Instruction instruction, boolean applicable);
31: }
|