@Override protected CubaButton createContextMenuButton() { return new CubaButton(); }
public void setUseResponsePending(boolean useResponsePending) { if (isUseResponsePending() != useResponsePending) { getState().useResponsePending = useResponsePending; } }
public WebLogoutButton() { component = new CubaButton(); component.addStyleName(LOGOUT_BUTTON_STYLENAME); component.addClickListener(event -> logout()); }
@Override public void setClickShortcut(int keyCode, int... modifiers) { if (clickShortcut != null) { removeShortcutListener(clickShortcut); } clickShortcut = new CubaClickShortcut(this, keyCode, modifiers); addShortcutListener(clickShortcut); getState().clickShortcutKeyCode = clickShortcut.getKeyCode(); }
dialog.setContent(layout); CubaButton reloginBtn = new CubaButton(); reloginBtn.addStyleName("c-primary-action"); reloginBtn.addClickListener(event -> relogin()); reloginBtn.setCaption(messages.getMainMessage(Type.OK.getMsgKey())); reloginBtn.setIcon(AppBeans.get(IconResolver.class).getIconResource(iconName)); reloginBtn.focus(); reloginBtn.setCubaId("reloginBtn"); reloginBtn.setId(ui.getTestIdManager().getTestId("reloginBtn"));
if (caption != null && component.getCaption() == null) { component.setCaption(caption); description = action.getShortcutCombination().format(); if (description != null && component.getDescription() == null) { component.setDescription(description); component.setEnabled(action.isEnabled()); component.setVisible(action.isVisible()); action.addPropertyChangeListener(actionPropertyChangeListener); if (component.getCubaId() == null) { AppUI ui = AppUI.getCurrent(); if (ui != null && ui.isTestMode()) { component.setCubaId(action.getId());
protected CubaButton createActionButton(Action action) { CubaButton button = new CubaButton(); button.setWidth(100, Sizeable.Unit.PERCENTAGE); button.setPrimaryStyleName(CONTEXT_MENU_BUTTON_STYLENAME); setPopupButtonAction(button, action); AppUI ui = AppUI.getCurrent(); if (ui != null) { if (ui.isTestMode()) { button.setCubaId(action.getId()); } if (ui.isPerformanceTestMode()) { String debugId = getDebugId(); if (debugId != null) { TestIdManager testIdManager = ui.getTestIdManager(); button.setId(testIdManager.getTestId(debugId + "_" + action.getId())); } } } return button; }
public CubaButton createButton(Action action) { CubaButton button = new CubaButton(); if (action instanceof DialogAction) { DialogAction.Type type = ((DialogAction) action).getType(); button.setCaption(messages.getMainMessage(type.getMsgKey())); String iconPath = icons.get(type.getIconKey()); button.setIcon(iconResolver.getIconResource(iconPath)); } button.setEnabled(action.isEnabled()); if (StringUtils.isNotEmpty(action.getCaption())) { button.setCaption(action.getCaption()); } if (StringUtils.isNotEmpty(action.getDescription())) { button.setDescription(action.getDescription()); } if (StringUtils.isNotEmpty(action.getIcon())) { button.setIcon(iconResolver.getIconResource(action.getIcon())); } return button; }
Messages messages = beanLocator.get(Messages.NAME); CubaButton closeBtn = new CubaButton(""); closeBtn.setDescription(messages.getMainMessage("windowBreadCrumbs.closeButton.description")); closeBtn.setClickHandler(this::onCloseWindowButtonClick); closeBtn.setIcon(resolveIcon(beanLocator, CubaIcon.CLOSE)); closeBtn.setStyleName("c-closetab-button");
for (Action action : actions) { CubaButton button = createButton(action); button.setClickHandler(mouseEventDetails -> { try { action.actionPerform(ui.getTopLevelWindow()); button.addStyleName("c-primary-action"); button.focus(); button.setCubaId("optionDialog_" + action.getId()); button.setId(ui.getTestIdManager().getTestId("optionDialog_" + action.getId()));
@Override protected void fireClick(MouseEventDetails details) { // check if it cannot be clicked at all due to modal dialogs CubaUI ui = (CubaUI) getUI(); if (ui.isAccessibleForUser(this)) { try { if (clickHandler != null) { clickHandler.accept(details); } else { super.fireClick(details); } } finally { if (getState(false).useResponsePending) { getRpcProxy(CubaButtonClientRpc.class).onClickHandled(); } } } else { LoggerFactory.getLogger(CubaButton.class) .debug("Ignore click because button is inaccessible for user"); } }
public WebNewWindowButton() { component = new CubaButton(); component.addStyleName(NEW_WINDOW_BUTTON_STYLENAME); component.setDescription(null); URL pageUrl; try { pageUrl = Page.getCurrent().getLocation().toURL(); } catch (MalformedURLException ignored) { LoggerFactory.getLogger(WebNewWindowButton.class).warn("Couldn't get URL of current Page"); return; } ExternalResource currentPage = new ExternalResource(pageUrl); final BrowserWindowOpener opener = new BrowserWindowOpener(currentPage); opener.setWindowName("_blank"); opener.extend(component); }
@Override public void addAction(Action action, int index) { checkNotNullArgument(action, "action must be non null"); int oldIndex = findActionById(actions, action.getId()); if (oldIndex >= 0) { removeAction(actions.get(oldIndex)); if (index > oldIndex) { index--; } } actions.add(index, action); actionHandler.addAction(action, index); CubaButton vButton = new CubaButton(); setPickerButtonAction(vButton, action); component.addButton(vButton, index); actionButtons.put(action, vButton); if (StringUtils.isNotEmpty(getDebugId())) { TestIdManager testIdManager = AppUI.getCurrent().getTestIdManager(); // Set debug id vButton.setId(testIdManager.getTestId(getDebugId() + "_" + action.getId())); } if (action instanceof PickerFieldAction) { PickerFieldAction pickerFieldAction = (PickerFieldAction) action; pickerFieldAction.setPickerField(this); if (!isEditable()) { pickerFieldAction.editableChanged(this, isEditable()); } } actionsPermissions.apply(action); }
protected void logout() { AppUI ui = ((AppUI) component.getUI()); if (ui == null) { throw new IllegalStateException("Logout button is not attached to UI"); } ui.getApp().logout(); }
@Override public boolean isUseResponsePending() { return component.isUseResponsePending(); }
@Override public void show() { initShortcuts(); if (ui.isTestMode()) { window.setCubaId("messageDialog"); messageLabel.setCubaId("messageDialogLabel"); okButton.setCubaId("messageDialogOk"); } if (ui.isPerformanceTestMode()) { window.setId(ui.getTestIdManager().getTestId("messageDialog")); } if (!window.isModal()) { for (com.vaadin.ui.Window w : ui.getWindows()) { if (w.isModal()) { window.setModal(true); break; } } } ui.addWindow(window); window.center(); window.bringToFront(); okButton.focus(); }
public WebLinkButton() { component.addStyleName(ValoTheme.BUTTON_LINK); }
@Override public void focus() { component.focus(); }
@Override protected void fireClick() { // check if it cannot be clicked at all due to modal dialogs CubaUI ui = (CubaUI) getUI(); if (ui.isAccessibleForUser(this)) { if (clickHandler != null) { clickHandler.accept(null); } else { super.fireClick(); } } else { LoggerFactory.getLogger(CubaButton.class) .debug("Ignore click because button is inaccessible for user"); } }
@Override public void setStyleName(String name) { super.setStyleName(name); component.addStyleName(LOGOUT_BUTTON_STYLENAME); }