package org.ovirt.engine.ui.common.widget.label; import org.ovirt.engine.ui.common.widget.HasEnabledWithHints; /** * This interface is intended to be implemented by labels that can follow state of their target widgets. * I.e. * <ul> * <li>enabled/disable state + hints</li> * <li>element id</li> * </ul> * * Such label can be declaratively attached to its target widget in *.ui.xml file * without the need of code co-location. * * <pre> * {@code * <LabelWithTooltip forWidget="{intEditor}" /> * ... * <IntegerEntityModelEditor ui:field="intEditor" /> * } * </pre> * * @see HasWidgetLabels */ public interface WidgetLabel extends HasEnabledWithHints { /** * Setter of target widget. * <br/> * Intended to be called declaratively from ui.xml files */ void setForWidget(HasWidgetLabels targetWidget); /** * HTML Label "for" attribute setter * <br/> * Intended to be called by implementations of {@link HasWidgetLabels} */ void setFor(final String targetId); }