|| ((component instanceof Component.Wrapper) && ((Component.Wrapper) component).getComponent() instanceof Frame))
/** * Returns underlying Vaadin component, which serves as the outermost container for the supplied GUI component. * For simple components like {@link com.haulmont.cuba.gui.components.Button} this method returns the same * result as {@link #unwrap(com.haulmont.cuba.gui.components.Component)}. * * @param component GUI component * @return Vaadin component * @see #unwrap(com.haulmont.cuba.gui.components.Component) */ public static Component getComposition(com.haulmont.cuba.gui.components.Component component) { Object comp = component; while (comp instanceof com.haulmont.cuba.gui.components.Component.Wrapper) { comp = ((com.haulmont.cuba.gui.components.Component.Wrapper) comp).getComposition(); } return (Component) comp; }
/** * Returns underlying Vaadin component implementation. * * @param component GUI component * @return Vaadin component * @see #getComposition(com.haulmont.cuba.gui.components.Component) */ public static Component unwrap(com.haulmont.cuba.gui.components.Component component) { Object comp = component; while (comp instanceof com.haulmont.cuba.gui.components.Component.Wrapper) { comp = ((com.haulmont.cuba.gui.components.Component.Wrapper) comp).getComponent(); } return (Component) comp; }
@SuppressWarnings("unchecked") @Override public <X> X unwrapComposition(Class<X> internalCompositionClass) { if (getComposition() instanceof Component.Wrapper) { return (X) ((Component.Wrapper) frame).getComposition(); } return (X) frame; }
@SuppressWarnings("unchecked") @Override public <X> X unwrap(Class<X> internalComponentClass) { if (getComponent() instanceof Component.Wrapper) { return (X) ((Component.Wrapper) frame).getComponent(); } return (X) frame; }
@SuppressWarnings("unchecked") @Override public <X> X unwrap(Class<X> internalComponentClass) { if (getComponent() instanceof Component.Wrapper) { return (X) ((Component.Wrapper) frame).getComponent(); } return (X) frame; }
@SuppressWarnings("unchecked") @Override public <X> X unwrapComposition(Class<X> internalCompositionClass) { if (getComposition() instanceof Component.Wrapper) { return (X) ((Component.Wrapper) frame).getComposition(); } return (X) frame; }