Search in sources :

Example 16 with AppUI

use of com.haulmont.cuba.web.AppUI in project cuba by cuba-platform.

the class DefaultExceptionHandler method handle.

@Override
public boolean handle(ErrorEvent event, App app) {
    // Copied from com.vaadin.server.DefaultErrorHandler.doDefault()
    // noinspection ThrowableResultOfMethodCallIgnored
    Throwable t = event.getThrowable();
    // noinspection ThrowableResultOfMethodCallIgnored
    if (t instanceof SocketException || ExceptionUtils.getRootCause(t) instanceof SocketException) {
        // Most likely client browser closed socket
        return true;
    }
    // Support Tomcat 8 ClientAbortException
    if (StringUtils.contains(ExceptionUtils.getMessage(t), "ClientAbortException")) {
        // Most likely client browser closed socket
        return true;
    }
    AppUI ui = AppUI.getCurrent();
    if (ui == null) {
        // there is no UI, just add error to log
        return true;
    }
    if (t != null) {
        if (app.getConnection().getSession() != null) {
            showDialog(app, t);
        } else {
            showNotification(app, t);
        }
    }
    return true;
}
Also used : SocketException(java.net.SocketException) AppUI(com.haulmont.cuba.web.AppUI)

Example 17 with AppUI

use of com.haulmont.cuba.web.AppUI in project cuba by cuba-platform.

the class WebDataGrid method setupGridColumnProperties.

protected void setupGridColumnProperties(Grid.Column gridColumn, Column column) {
    gridColumn.setHeaderCaption(column.getCaption());
    gridColumn.setHidingToggleCaption(column.getCollapsingToggleCaption());
    if (column.isWidthAuto()) {
        gridColumn.setWidthUndefined();
    } else {
        gridColumn.setWidth(column.getWidth());
    }
    gridColumn.setExpandRatio(column.getExpandRatio());
    gridColumn.setMinimumWidth(column.getMinimumWidth());
    gridColumn.setMaximumWidth(column.getMaximumWidth());
    gridColumn.setHidden(column.isCollapsed());
    gridColumn.setHidable(column.isCollapsible() && column.getOwner().isColumnsCollapsingAllowed());
    gridColumn.setResizable(column.isResizable());
    gridColumn.setEditable(column.isEditable());
    AppUI current = AppUI.getCurrent();
    if (current != null && current.isTestMode()) {
        addColumnId(gridColumn, column);
    }
    // workaround to prevent exception from GridColumn while Grid is using default IndexedContainer
    if (getContainerDataSource() instanceof SortableDataGridIndexedCollectionDsWrapper) {
        gridColumn.setSortable(column.isSortable() && column.getOwner().isSortable());
    }
    ((ColumnImpl) column).setGridColumn(gridColumn);
    if (column.getFormatter() != null) {
        FormatterBasedConverter converter = new FormatterBasedConverter(column.getFormatter());
        gridColumn.setConverter(converter);
    } else {
        MetaProperty metaProperty = column.getPropertyPath() != null ? column.getPropertyPath().getMetaProperty() : null;
        if (metaProperty != null && Collection.class.isAssignableFrom(metaProperty.getJavaType())) {
            final FormatterBasedConverter converter = new FormatterBasedConverter(new CollectionFormatter());
            gridColumn.setConverter(converter);
        } else {
            setDefaultConverter(gridColumn, metaProperty, column.getType());
            setDefaultRenderer(gridColumn, metaProperty, column.getType());
        }
    }
}
Also used : SortableDataGridIndexedCollectionDsWrapper(com.haulmont.cuba.web.gui.data.SortableDataGridIndexedCollectionDsWrapper) MetaProperty(com.haulmont.chile.core.model.MetaProperty) AppUI(com.haulmont.cuba.web.AppUI) FormatterBasedConverter(com.haulmont.cuba.web.toolkit.ui.converters.FormatterBasedConverter) CollectionFormatter(com.haulmont.cuba.gui.components.formatters.CollectionFormatter)

Example 18 with AppUI

use of com.haulmont.cuba.web.AppUI in project cuba by cuba-platform.

the class WebFieldGroup method setDebugId.

@Override
public void setDebugId(String id) {
    super.setDebugId(id);
    AppUI ui = AppUI.getCurrent();
    if (ui != null && id != null) {
        for (final FieldConfig fc : fields.values()) {
            com.vaadin.ui.Field field = ((FieldConfigImpl) fc).getComposition();
            if (field != null) {
                field.setId(ui.getTestIdManager().getTestId(id + "_" + fc.getId()));
            }
        }
    }
}
Also used : AppUI(com.haulmont.cuba.web.AppUI)

Example 19 with AppUI

use of com.haulmont.cuba.web.AppUI in project cuba by cuba-platform.

the class WebWindow method attachTimerToUi.

protected void attachTimerToUi(WebTimer timer) {
    AppUI appUI = (AppUI) component.getUI();
    appUI.addTimer(timer.getTimerImpl());
}
Also used : AppUI(com.haulmont.cuba.web.AppUI)

Aggregations

AppUI (com.haulmont.cuba.web.AppUI)19 TestIdManager (com.haulmont.cuba.gui.TestIdManager)3 AggregationContainer (com.haulmont.cuba.web.toolkit.data.AggregationContainer)2 Label (com.vaadin.ui.Label)2 MetaProperty (com.haulmont.chile.core.model.MetaProperty)1 ClientConfig (com.haulmont.cuba.client.ClientConfig)1 Configuration (com.haulmont.cuba.core.global.Configuration)1 Messages (com.haulmont.cuba.core.global.Messages)1 Timer (com.haulmont.cuba.gui.components.Timer)1 Window (com.haulmont.cuba.gui.components.Window)1 CollectionFormatter (com.haulmont.cuba.gui.components.formatters.CollectionFormatter)1 Icons (com.haulmont.cuba.gui.icons.Icons)1 User (com.haulmont.cuba.security.entity.User)1 UserSubstitution (com.haulmont.cuba.security.entity.UserSubstitution)1 UserSession (com.haulmont.cuba.security.global.UserSession)1 WebWindow (com.haulmont.cuba.web.gui.WebWindow)1 WebButton (com.haulmont.cuba.web.gui.components.WebButton)1 SortableDataGridIndexedCollectionDsWrapper (com.haulmont.cuba.web.gui.data.SortableDataGridIndexedCollectionDsWrapper)1 CubaButton (com.haulmont.cuba.web.toolkit.ui.CubaButton)1 CubaComboBox (com.haulmont.cuba.web.toolkit.ui.CubaComboBox)1