package be.selckin.swu; import org.apache.wicket.Component; import org.apache.wicket.markup.html.WebMarkupContainer; import java.util.Iterator; public class ChildVisibilityWebMarkupContainer extends WebMarkupContainer { private final Component[] components; public ChildVisibilityWebMarkupContainer(String id) { super(id); this.components = null; } public ChildVisibilityWebMarkupContainer(String id, Component... components) { super(id); this.components = components; } @Override public boolean isVisible() { if (components != null) { for (Component component : components) { if (component.isVisible() && component.isVisibilityAllowed()) return true; } return false; } else { Iterator<? extends Component> it = iterator(); while (it.hasNext()) if (it.next().isVisible()) return true; return false; } } }