Search in sources :

Example 1 with Container

use of com.haulmont.cuba.gui.components.Component.Container in project cuba by cuba-platform.

the class WebWindowManager method showFrame.

@Override
public void showFrame(com.haulmont.cuba.gui.components.Component parent, Frame frame) {
    if (parent instanceof Container) {
        Container container = (Container) parent;
        for (com.haulmont.cuba.gui.components.Component c : container.getComponents()) {
            if (c instanceof com.haulmont.cuba.gui.components.Component.Disposable) {
                com.haulmont.cuba.gui.components.Component.Disposable disposable = (com.haulmont.cuba.gui.components.Component.Disposable) c;
                if (!disposable.isDisposed()) {
                    disposable.dispose();
                }
            }
            container.remove(c);
        }
        container.add(frame);
    } else {
        throw new IllegalStateException("Parent component must be com.haulmont.cuba.gui.components.Component.Container");
    }
}
Also used : Container(com.haulmont.cuba.gui.components.Component.Container) com.haulmont.cuba.gui.components(com.haulmont.cuba.gui.components) WebAbstractComponent(com.haulmont.cuba.web.gui.components.WebAbstractComponent) Component(com.vaadin.ui.Component)

Example 2 with Container

use of com.haulmont.cuba.gui.components.Component.Container in project cuba by cuba-platform.

the class WebComponentsHelper method getShortcutEvent.

public static ShortcutTriggeredEvent getShortcutEvent(com.haulmont.cuba.gui.components.Component source, Component target) {
    Component vaadinSource = getVaadinSource(source);
    if (vaadinSource == target) {
        return new ShortcutTriggeredEvent(source, source);
    }
    if (source instanceof Container) {
        Container container = (Container) source;
        com.haulmont.cuba.gui.components.Component childComponent = findChildComponent(container, target);
        return new ShortcutTriggeredEvent(source, childComponent);
    }
    return new ShortcutTriggeredEvent(source, null);
}
Also used : AggregationContainer(com.haulmont.cuba.web.toolkit.data.AggregationContainer) Container(com.haulmont.cuba.gui.components.Component.Container) com.haulmont.cuba.gui.components(com.haulmont.cuba.gui.components) ShortcutTriggeredEvent(com.haulmont.cuba.gui.components.Component.ShortcutTriggeredEvent) Component(com.vaadin.ui.Component)

Example 3 with Container

use of com.haulmont.cuba.gui.components.Component.Container in project cuba by cuba-platform.

the class WebComponentsHelper method findChildComponent.

protected static com.haulmont.cuba.gui.components.Component findChildComponent(Collection<com.haulmont.cuba.gui.components.Component> components, Component vaadinSource, Component target) {
    Component targetComponent = getDirectChildComponent(target, vaadinSource);
    for (com.haulmont.cuba.gui.components.Component component : components) {
        Component unwrapped = component.unwrapComposition(Component.class);
        if (unwrapped == targetComponent) {
            com.haulmont.cuba.gui.components.Component child = null;
            if (component instanceof Container) {
                child = findChildComponent((Container) component, target);
            }
            if (component instanceof HasButtonsPanel) {
                ButtonsPanel buttonsPanel = ((HasButtonsPanel) component).getButtonsPanel();
                if (getVaadinSource(buttonsPanel) == target) {
                    return buttonsPanel;
                } else {
                    child = findChildComponent(buttonsPanel, target);
                }
            }
            if (component instanceof FieldGroup) {
                FieldGroup fieldGroup = (FieldGroup) component;
                child = findChildComponent(fieldGroup, target);
            }
            return child != null ? child : component;
        }
    }
    return null;
}
Also used : com.haulmont.cuba.gui.components(com.haulmont.cuba.gui.components) AggregationContainer(com.haulmont.cuba.web.toolkit.data.AggregationContainer) Container(com.haulmont.cuba.gui.components.Component.Container) HasButtonsPanel(com.haulmont.cuba.gui.components.Component.HasButtonsPanel) Component(com.vaadin.ui.Component) HasButtonsPanel(com.haulmont.cuba.gui.components.Component.HasButtonsPanel)

Aggregations

com.haulmont.cuba.gui.components (com.haulmont.cuba.gui.components)3 Container (com.haulmont.cuba.gui.components.Component.Container)3 Component (com.vaadin.ui.Component)3 AggregationContainer (com.haulmont.cuba.web.toolkit.data.AggregationContainer)2 HasButtonsPanel (com.haulmont.cuba.gui.components.Component.HasButtonsPanel)1 ShortcutTriggeredEvent (com.haulmont.cuba.gui.components.Component.ShortcutTriggeredEvent)1 WebAbstractComponent (com.haulmont.cuba.web.gui.components.WebAbstractComponent)1