use of com.vaadin.ui.TextField in project esup-ecandidat by EsupPortail.
the class TestMailWindow method generateHlTf.
private HorizontalLayout generateHlTf(final String property) {
HorizontalLayout hl = new HorizontalLayout();
hl.setWidth(100, Unit.PERCENTAGE);
hl.setSpacing(true);
TextField tfLabel = new TextField();
tfLabel.setValue("${" + property + "}");
tfLabel.setReadOnly(true);
hl.addComponent(tfLabel);
hl.setExpandRatio(tfLabel, 1);
TextField tf = new TextField();
tf.setId(property);
tf.setWidth(100, Unit.PERCENTAGE);
tf.setValue("test" + property.replaceAll("\\.", ""));
hl.addComponent(tf);
hl.setExpandRatio(tf, 1.5f);
listTf.add(tf);
return hl;
}
use of com.vaadin.ui.TextField in project unity by unity-idm.
the class EditOAuthClientSubView method buildHeaderSection.
private FormLayoutWithFixedCaptionWidth buildHeaderSection() {
FormLayoutWithFixedCaptionWidth header = new FormLayoutWithFixedCaptionWidth();
header.setMargin(true);
TextField name = new TextField();
name.setCaption(msg.getMessage("EditOAuthClientSubView.name"));
binder.forField(name).withValidator((v, c) -> {
if (v != null && !v.isEmpty() && v.length() < 2) {
return ValidationResult.error(msg.getMessage("toShortValue"));
}
return ValidationResult.ok();
}).bind("name");
header.addComponent(name);
ComboBox<String> type = new ComboBox<>();
type.setCaption(msg.getMessage("EditOAuthClientSubView.type"));
type.setItems(Stream.of(ClientType.values()).map(f -> f.toString()).collect(Collectors.toList()));
type.setEmptySelectionAllowed(false);
binder.forField(type).bind("type");
header.addComponent(type);
TextFieldWithGenerator id = new TextFieldWithGenerator();
id.setCaption(msg.getMessage("EditOAuthClientSubView.id"));
id.setReadOnly(editMode);
id.setWidth(30, Unit.EM);
binder.forField(id).asRequired(msg.getMessage("fieldRequired")).withValidator((v, c) -> {
if (v != null && allClientsIds.contains(v)) {
return ValidationResult.error(msg.getMessage("EditOAuthClientSubView.invalidClientId"));
}
return ValidationResult.ok();
}).bind("id");
header.addComponent(id);
CustomField<String> secret;
if (!editMode) {
secret = new TextFieldWithGenerator();
secret.setCaption(msg.getMessage("EditOAuthClientSubView.secret"));
secret.setWidth(30, Unit.EM);
binder.forField(secret).withValidator((v, c) -> {
if ((v == null || v.isEmpty()) && ClientType.CONFIDENTIAL.toString().equals(type.getValue())) {
return ValidationResult.error(msg.getMessage("fieldRequired"));
}
return ValidationResult.ok();
}).bind("secret");
header.addComponent(secret);
} else {
TextFieldWithChangeConfirmation<TextFieldWithGenerator> secretWithChangeConfirmation = new TextFieldWithChangeConfirmation<>(msg, new TextFieldWithGenerator());
secretWithChangeConfirmation.setCaption(msg.getMessage("EditOAuthClientSubView.secret"));
secretWithChangeConfirmation.setWidth(30, Unit.EM);
binder.forField(secretWithChangeConfirmation).withValidator((v, c) -> {
if (secretWithChangeConfirmation.isEditMode()) {
return ValidationResult.error(msg.getMessage("fieldRequired"));
}
return ValidationResult.ok();
}).bind("secret");
header.addComponent(secretWithChangeConfirmation);
secret = secretWithChangeConfirmation;
}
type.addValueChangeListener(e -> {
secret.setEnabled(ClientType.CONFIDENTIAL.toString().equals(e.getValue()));
if (!secret.isEnabled())
secret.setValue("");
});
ChipsWithDropdown<String> allowedFlows = new ChipsWithDropdown<>();
allowedFlows.setCaption(msg.getMessage("EditOAuthClientSubView.allowedFlows"));
allowedFlows.setItems(Stream.of(GrantFlow.values()).map(f -> f.toString()).collect(Collectors.toList()));
binder.forField(allowedFlows).withValidator((v, c) -> {
if (v == null || v.isEmpty()) {
return ValidationResult.error(msg.getMessage("fieldRequired"));
}
return ValidationResult.ok();
}).bind("flows");
header.addComponent(allowedFlows);
ChipsWithTextfield redirectURIs = new ChipsWithTextfield(msg);
redirectURIs.setWidth(FieldSizeConstans.LINK_FIELD_WIDTH, FieldSizeConstans.LINK_FIELD_WIDTH_UNIT);
redirectURIs.setCaption(msg.getMessage("EditOAuthClientSubView.authorizedRedirectURIs"));
binder.forField(redirectURIs).withValidator((v, c) -> {
if (v == null || v.size() == 0) {
return ValidationResult.error(msg.getMessage("fieldRequired"));
}
return ValidationResult.ok();
}).bind("redirectURIs");
header.addComponent(redirectURIs);
Set<String> definedScopes = scopesSupplier.get();
ChipsWithDropdown<String> allowedScopes = new ChipsWithDropdown<>();
allowedScopes.setCaption(msg.getMessage("EditOAuthClientSubView.allowedScopes"));
allowedScopes.setItems(definedScopes);
allowedScopes.setSkipRemoveInvalidSelections(true);
binder.forField(allowedScopes).withValidator((v, c) -> {
if (v != null && !v.isEmpty() && !definedScopes.containsAll(v)) {
return ValidationResult.error(msg.getMessage("EditOAuthClientSubView.invalidAllowedScopes"));
}
return ValidationResult.ok();
}).bind("scopes");
CheckBox allowAllScopes = new CheckBox(msg.getMessage("EditOAuthClientSubView.allowAllScopes"));
binder.forField(allowAllScopes).bind("allowAnyScopes");
allowAllScopes.addValueChangeListener(v -> allowedScopes.setEnabled(!v.getValue()));
header.addComponent(allowAllScopes);
header.addComponent(allowedScopes);
return header;
}
use of com.vaadin.ui.TextField in project unity by unity-idm.
the class TranslationProfileEditor method initUI.
protected void initUI() {
rulesLayout = new VerticalLayout();
rulesLayout.setSpacing(false);
rulesLayout.setMargin(false);
rulesLayout.setHeightUndefined();
rulesLayout.setWidth(100, Unit.PERCENTAGE);
rulesLayout.setStyleName(Styles.vDropLayout.toString());
name = new TextField(msg.getMessage("TranslationProfileEditor.name"));
description = new DescriptionTextField(msg);
rulesHeader = new HorizontalLayout();
rulesHeader.setMargin(false);
addRule = new Button();
addRule.setDescription(msg.getMessage("TranslationProfileEditor.newRule"));
addRule.setIcon(Images.add.getResource());
addRule.addStyleName(Styles.vButtonLink.toString());
addRule.addStyleName(Styles.toolbarButton.toString());
addRule.addClickListener(event -> addRuleComponent(null));
testProfileButton = new StartStopButton();
testProfileButton.setVisible(false);
testProfileButton.setDescription(msg.getMessage("TranslationProfileEditor.testProfile"));
testProfileButton.addClickListener(new StartStopButton.StartStopListener() {
@Override
public void onStop(ClickStopEvent event) {
clearTestResults();
}
@Override
public void onStart(ClickStartEvent event) {
testRules();
}
});
Label t = new Label(msg.getMessage("TranslationProfileEditor.rules"));
rulesHeader.addComponents(t, addRule, testProfileButton);
FormLayout main = new CompactFormLayout();
main.addComponents(name, description);
main.setSizeFull();
VerticalLayout wrapper = new VerticalLayout();
wrapper.addComponents(main, rulesHeader, rulesLayout);
binder = new Binder<>(TranslationProfile.class);
binder.forField(name).asRequired(msg.getMessage("fieldRequired")).bind("name");
binder.bind(description, "description");
binder.setBean(new TranslationProfile(msg.getMessage("TranslationProfileEditor.defaultName"), null, type, new ArrayList<TranslationRule>()));
setSpacing(false);
setMargin(false);
addComponents(wrapper);
refreshRules();
}
use of com.vaadin.ui.TextField in project unity by unity-idm.
the class MainAuthenticatorEditor method initUI.
private void initUI() {
Map<AuthenticatorTypeDescription, String> authnTypesSorted = getAuthenticatorTypes();
authenticatorTypeCombo = new ComboBox<>();
authenticatorTypeCombo.setCaption(msg.getMessage("MainAuthenticatorEditor.typeComboCaption"));
authenticatorTypeCombo.addSelectionListener(e -> reloadEditor());
if (typeChangeListener.isPresent()) {
authenticatorTypeCombo.addSelectionListener(typeChangeListener.get());
}
authenticatorTypeCombo.setEmptySelectionAllowed(false);
authenticatorTypeCombo.setItemCaptionGenerator(t -> authnTypesSorted.get(t));
authenticatorTypeCombo.setWidth(25, Unit.EM);
authenticatorTypeCombo.setItems(authnTypesSorted.keySet());
authenticatorTypeLabel = new TextField();
authenticatorTypeLabel.setWidth(25, Unit.EM);
authenticatorTypeLabel.setCaption(msg.getMessage("MainAuthenticatorEditor.typeLabelCaption"));
authenticatorTypeLabel.setReadOnly(true);
mainLayout = new VerticalLayout();
mainLayout.setMargin(false);
FormLayoutWithFixedCaptionWidth typeWrapper = new FormLayoutWithFixedCaptionWidth();
typeWrapper.setMargin(new MarginInfo(false, true));
typeWrapper.addComponent(authenticatorTypeCombo);
typeWrapper.addComponent(authenticatorTypeLabel);
mainLayout.addComponent(typeWrapper);
setCompositionRoot(mainLayout);
if (toEdit != null) {
AuthenticatorTypeDescription desc = authnTypesSorted.keySet().stream().filter(t -> t.getVerificationMethod().equals(toEdit.authenticator.type)).findFirst().orElse(null);
authenticatorTypeCombo.setValue(desc);
authenticatorTypeCombo.setVisible(false);
authenticatorTypeLabel.setValue(desc != null ? AuthenticatorTypeLabelHelper.getAuthenticatorTypeLabel(msg, desc) : "");
authenticatorTypeLabel.setVisible(true);
} else {
authenticatorTypeCombo.setVisible(true);
authenticatorTypeLabel.setVisible(false);
authenticatorTypeCombo.setValue(authnTypesSorted.keySet().iterator().next());
}
}
use of com.vaadin.ui.TextField in project unity by unity-idm.
the class CredentialRequirementEditor method init.
private void init(CredentialRequirements initial, Collection<CredentialDefinition> allCredentials) {
setWidth(100, Unit.PERCENTAGE);
TextField name = new TextField(msg.getMessage("CredentialRequirements.name"));
addComponent(name);
if (initial != null)
name.setReadOnly(true);
DescriptionTextField description = new DescriptionTextField(msg);
addComponent(description);
TwinColSelect<String> requiredCredentials = new TwinColSelect<>(msg.getMessage("CredentialRequirements.credentials"));
requiredCredentials.setLeftColumnCaption(msg.getMessage("CredentialRequirements.available"));
requiredCredentials.setRightColumnCaption(msg.getMessage("CredentialRequirements.chosen"));
requiredCredentials.setWidth(48, Unit.EM);
requiredCredentials.setRows(5);
requiredCredentials.setItems(allCredentials.stream().map(cr -> cr.getName()));
addComponent(requiredCredentials);
CredentialRequirements cr = initial == null ? new CredentialRequirements(msg.getMessage("CredentialRequirements.defaultName"), "", new HashSet<>()) : initial;
binder = new Binder<>(CredentialRequirements.class);
binder.forField(name).asRequired(msg.getMessage("fieldRequired")).bind("name");
binder.bind(description, "description");
binder.bind(requiredCredentials, "requiredCredentials");
binder.setBean(cr);
}
Aggregations