protected void initField() { CubaTextField field = new CubaTextField(); field.setStyleName(TEXT_FIELD_STYLENAME); field.setReadOnlyFocusable(true); field.setReadOnly(fieldReadOnly); this.field = field; field.addValueChangeListener(this::onFieldValueChange); }
@Override protected void doSetValue(String value) { textField.setValue(value); }
protected void initTextField() { textField.addStyleName(CURRENCYFIELD_TEXT_STYLENAME); textField.setWidth("100%"); textField.setValueChangeMode(ValueChangeMode.BLUR); textField.addValueChangeListener(event -> markAsDirty()); }
public WebFtsField() { component = new CssLayout(); component.setPrimaryStyleName(FTS_FIELD_STYLENAME); searchField = new CubaTextField(); searchField.setStyleName("c-ftsfield-text"); searchField.addShortcutListener( new ShortcutListenerDelegate("fts", KeyCode.ENTER, null) .withHandler((sender, target) -> openSearchWindow() )); searchBtn = new CubaButton(); searchBtn.setStyleName("c-ftsfield-button"); searchBtn.addClickListener(event -> openSearchWindow() ); component.addComponent(searchField); component.addComponent(searchBtn); adjustHeight(); adjustWidth(); }
@Override public void setFieldReadOnlyFocusable(TextField textField, boolean readOnlyFocusable) { CubaTextField vTextField = textField.unwrap(CubaTextField.class); vTextField.setReadOnlyFocusable(readOnlyFocusable); }
protected CubaTextField createComponent() { return new CubaTextField(); }
@Override public void setReadOnly(boolean readOnly) { if (readOnly == isReadOnly()) return; super.setReadOnly(readOnly); } }
public Registration addFieldListener(FieldValueChangeListener<T> listener) { if (fieldValueChangeListener == null) { fieldValueChangeListener = ((CubaTextField) field).addValueChangeListener(event -> { String text = event.getValue(); if (!suppressTextChangeListener && !Objects.equals(getStringRepresentation(), text)) { suppressTextChangeListener = true; FieldValueChangeEvent<T> e = new FieldValueChangeEvent<>(CubaPickerField.this, text, getValue()); fireEvent(e); suppressTextChangeListener = false; // update text representation manually if (field instanceof TextField) { updateTextRepresentation(); } } }); } addListener(FieldValueChangeEvent.class, listener, FIELD_VALUE_CHANGE_METHOD); return fieldValueChangeListener; }
@Override public Registration addShortcutListener(ShortcutListener listener) { getActionManager().addAction(listener); return () -> getActionManager().removeAction(listener); }
/** * @deprecated Will be removed without replacement */ @Deprecated public static void addEnterShortcut(TextField textField, Runnable runnable) { CubaTextField cubaTextField = textField.unwrap(CubaTextField.class); cubaTextField.addShortcutListener( new ShortcutListenerDelegate("", ShortcutAction.KeyCode.ENTER, null) .withHandler((sender, target) -> runnable.run() )); }
@Override public void focus() { component.focus(); }
protected void updateFieldReadOnlyFocusable() { ((CubaTextField) getField()).setReadOnlyFocusable(!isReadOnly() && fieldReadOnly); }
public CubaCurrencyField() { this.textField = new CubaTextField(); init(); initTextField(); initCurrencyLabel(); initLayout(); updateCurrencyLabelVisibility(); }
@Override public void setReadOnly(boolean readOnly) { super.setReadOnly(readOnly); textField.setReadOnly(readOnly); }
@Override public void addActionHandler(Action.Handler actionHandler) { getActionManager().addActionHandler(actionHandler); }
@Override public Subscription addEnterPressListener(Consumer<EnterPressEvent> listener) { if (enterShortcutListener == null) { enterShortcutListener = new ShortcutListenerDelegate("", KeyCode.ENTER, null) .withHandler((sender, target) -> { EnterPressEvent event = new EnterPressEvent(WebTextField.this); publish(EnterPressEvent.class, event); }); component.addShortcutListener(enterShortcutListener); } getEventHub().subscribe(EnterPressEvent.class, listener); return () -> removeEnterPressListener(listener); }
@Override public void focus() { textField.focus(); }
protected void updateTextRepresentation() { CubaTextField textField = (CubaTextField) field; suppressTextChangeListener = true; String value = getStringRepresentation(); textField.setValue(value); suppressTextChangeListener = false; }
@Override public void removeShortcutListener(ShortcutListener listener) { getActionManager().removeAction(listener); }
@Override public void addShortcutListener(TextField textField, final ShortcutListener listener) { CubaTextField vTextField = textField.unwrap(CubaTextField.class); int[] modifiers = null; KeyCombination.Modifier[] listenerModifiers = listener.getKeyCombination().getModifiers(); if (listenerModifiers != null) { modifiers = new int[listenerModifiers.length]; for (int i = 0; i < modifiers.length; i++) { modifiers[i] = listenerModifiers[i].getCode(); } } int keyCode = listener.getKeyCombination().getKey().getCode(); vTextField.addShortcutListener( new ShortcutListenerDelegate(listener.getCaption(), keyCode, modifiers) .withHandler((sender, target) -> listener.handleShortcutPressed() )); }