Example usage for com.vaadin.client LayoutManager registerDependency

List of usage examples for com.vaadin.client LayoutManager registerDependency

Introduction

In this page you can find the example usage for com.vaadin.client LayoutManager registerDependency.

Prototype

public void registerDependency(ManagedLayout owner, Element element) 

Source Link

Document

Registers that a ManagedLayout is depending on the size of an Element.

Usage

From source file:com.haulmont.cuba.web.toolkit.ui.client.groupbox.CubaGroupBoxConnector.java

License:Apache License

@Override
public void onStateChanged(StateChangeEvent stateChangeEvent) {
    super.onStateChanged(stateChangeEvent);

    CubaGroupBoxWidget widget = getWidget();

    if (!widgetInitialized) {
        widget.init();/*from  w w w.j a  v  a 2  s.  c  o  m*/
        if (!getState().showAsPanel) {
            LayoutManager layoutManager = getLayoutManager();
            layoutManager.registerDependency(this, widget.captionStartDeco);
            layoutManager.registerDependency(this, widget.captionEndDeco);
            layoutManager.registerDependency(this, widget.captionTextNode);
        }

        widgetInitialized = true;
    }

    widget.setCollapsable(getState().collapsable);
    widget.setExpanded(getState().expanded);
    widget.setShowAsPanel(getState().showAsPanel);
    if (!getState().showAsPanel) {
        widget.setOuterMargin(new MarginInfo(getState().outerMarginsBitmask));
    }

    if (stateChangeEvent.hasPropertyChanged("caption")) {
        widget.captionNode.getStyle().clearWidth();
        getLayoutManager().setNeedsMeasure(this);
    }
}