Search in sources :

Example 26 with AppUI

use of io.jmix.ui.AppUI in project jmix by jmix-framework.

the class SideMenuImpl method assignJTestId.

protected void assignJTestId(MenuItem menuItem) {
    AppUI ui = AppUI.getCurrent();
    if (ui == null || !ui.isTestMode())
        return;
    assignJTestIdInternal(menuItem);
}
Also used : AppUI(io.jmix.ui.AppUI)

Example 27 with AppUI

use of io.jmix.ui.AppUI in project jmix by jmix-framework.

the class ValuePickerImpl method setupButtonAction.

protected void setupButtonAction(JmixButton button, Action action) {
    String description = action.getDescription();
    if (description == null && action.getShortcutCombination() != null) {
        description = action.getShortcutCombination().format();
    }
    if (description != null) {
        button.setDescription(description);
    }
    button.setEnabled(action.isEnabled());
    button.setVisible(action.isVisible());
    if (action.getIcon() != null) {
        setButtonIcon(button, action.getIcon());
    }
    AppUI ui = AppUI.getCurrent();
    if (ui != null && ui.isTestMode()) {
        button.setJTestId(action.getId());
    }
    button.setClickHandler(event -> {
        this.focus();
        action.actionPerform(this);
    });
}
Also used : AppUI(io.jmix.ui.AppUI)

Example 28 with AppUI

use of io.jmix.ui.AppUI in project jmix by jmix-framework.

the class WindowImpl method setId.

@Override
public void setId(@Nullable String id) {
    this.id = id;
    AppUI ui = AppUI.getCurrent();
    if (ui != null && ui.isPerformanceTestMode()) {
        getComponent().setId(ui.getTestIdManager().getTestId("window_" + id));
    }
}
Also used : AppUI(io.jmix.ui.AppUI)

Example 29 with AppUI

use of io.jmix.ui.AppUI in project jmix by jmix-framework.

the class CubaFoldersPane method setupUpdateTimer.

protected void setupUpdateTimer() {
    if (cubaProperties.isFoldersPaneEnabled()) {
        int period = cubaProperties.getAppFoldersRefreshPeriodSec() * 1000;
        timer = new FoldersPaneTimer();
        timer.setRepeating(true);
        timer.setDelay(period);
        timer.addActionListener(createAppFolderUpdater());
        timer.start();
        if (this.isAttached()) {
            AppUI ui = AppUI.getCurrent();
            stopExistingFoldersPaneTimer(ui);
            ui.addTimer(timer);
        } else if (frame != null) {
            Window window = CubaComponentsHelper.getWindowImplementation(frame);
            if (window == null) {
                throw new IllegalStateException("Null window for CubaFoldersPane");
            }
            AbstractComponent topLevelFrame = window.unwrapComposition(AbstractComponent.class);
            timer.extend(topLevelFrame);
        }
    }
}
Also used : Window(io.jmix.ui.component.Window) AppUI(io.jmix.ui.AppUI)

Example 30 with AppUI

use of io.jmix.ui.AppUI in project jmix by jmix-framework.

the class FolderEditWindow method commit.

protected void commit() {
    AppUI appUI = AppUI.getCurrent();
    if (appUI == null) {
        return;
    }
    Notifications notifications = appUI.getNotifications();
    SearchFolder folder = (SearchFolder) FolderEditWindow.this.folder;
    if (StringUtils.trimToNull(nameField.getValue()) == null) {
        String msg = messages.getMainMessage("folders.folderEditWindow.emptyName");
        notifications.create(Notifications.NotificationType.TRAY).withCaption(msg).show();
        return;
    }
    folder.setName(nameField.getValue());
    folder.setTabName(tabNameField.getValue());
    if (sortOrderField.getValue() == null || "".equals(sortOrderField.getValue())) {
        folder.setSortOrder(null);
    } else {
        String value = sortOrderField.getValue();
        int sortOrder;
        try {
            sortOrder = Integer.parseInt(value);
        } catch (NumberFormatException e) {
            String msg = messages.getMainMessage("folders.folderEditWindow.invalidSortOrder");
            notifications.create(Notifications.NotificationType.WARNING).withCaption(msg).show();
            return;
        }
        folder.setSortOrder(sortOrder);
    }
    Object parent = parentSelect.getValue();
    if (parent instanceof Folder)
        folder.setParent((Folder) parent);
    else
        folder.setParent(null);
    folder.setApplyDefault(Boolean.valueOf(applyDefaultCb.getValue().toString()));
    if (globalCb != null) {
        if (BooleanUtils.isTrue(globalCb.getValue())) {
            folder.setUsername(null);
        } else {
            // todo user substitution
            // folder.setUser(userSessionSource.getUserSession().getCurrentOrSubstitutedUser());
            folder.setUsername(userSessionSource.getUserSession().getUser().getUsername());
        }
    } else {
        // todo user substitution
        // folder.setUser(userSessionSource.getUserSession().getCurrentOrSubstitutedUser());
        folder.setUsername(userSessionSource.getUserSession().getUser().getUsername());
    }
    if (presentation != null && presentation.getValue() != null) {
        folder.setPresentationId(((UiTablePresentation) presentation.getValue()).getId());
    }
    FolderEditWindow.this.commitHandler.run();
    forceClose();
}
Also used : AbstractSearchFolder(com.haulmont.cuba.core.entity.AbstractSearchFolder) SearchFolder(com.haulmont.cuba.security.entity.SearchFolder) AbstractSearchFolder(com.haulmont.cuba.core.entity.AbstractSearchFolder) SearchFolder(com.haulmont.cuba.security.entity.SearchFolder) Folder(com.haulmont.cuba.core.entity.Folder) AppUI(io.jmix.ui.AppUI) Notifications(io.jmix.ui.Notifications)

Aggregations

AppUI (io.jmix.ui.AppUI)56 TestIdManager (io.jmix.ui.sys.TestIdManager)8 Component (com.vaadin.ui.Component)5 UiEventsMulticaster (io.jmix.ui.sys.event.UiEventsMulticaster)4 ApplicationListener (org.springframework.context.ApplicationListener)4 SearchFolder (com.haulmont.cuba.security.entity.SearchFolder)3 Notifications (io.jmix.ui.Notifications)3 Folder (com.haulmont.cuba.core.entity.Folder)2 Internal (io.jmix.core.annotation.Internal)2 Screen (io.jmix.ui.screen.Screen)2 StandardCloseAction (io.jmix.ui.screen.StandardCloseAction)2 Subscribe (io.jmix.ui.screen.Subscribe)2 JmixButton (io.jmix.ui.widget.JmixButton)2 Nullable (javax.annotation.Nullable)2 Strings (com.google.common.base.Strings)1 AbstractSearchFolder (com.haulmont.cuba.core.entity.AbstractSearchFolder)1 AppFolder (com.haulmont.cuba.core.entity.AppFolder)1 AppFolderEditWindow (com.haulmont.cuba.web.app.folders.AppFolderEditWindow)1 FolderEditWindow (com.haulmont.cuba.web.app.folders.FolderEditWindow)1 KeyCode (com.vaadin.event.ShortcutAction.KeyCode)1