/** * Configure validation for the field * * @param selectedFileMustExists * @param allowEmptyString */ public void enforceValidation(boolean selectedFileMustExists, boolean allowEmptyString) { Validator<String> validator = Validators.fileType(fileType, selectedFileMustExists); if (allowEmptyString) { validator = Validators.validEmpty(validator); } getTextField().setValidator(validator); getTextField().setErrorMessage(buildErrorMessage(selectedFileMustExists)); }
void setMaxPages(Integer value) { if (value > 1) { this.field.setValidator(Validators.positiveIntRange(1, value - 1)); } }
public void setValidBookmarkLevels(SortedSet<Integer> levels) { getItems().clear(); if (nonNull(levels)) { validationSupport.setValidator(Validators.containedInteger(levels)); levels.stream().map(i -> i.toString()).forEach(getItems()::add); } else { validationSupport.setValidator(Validators.alwaysFalse()); } }
@Test public void andValidator() { Validator<String> first = Validators.nonBlank(); Validator<String> second = Validators.positiveInteger(); assertTrue(first.isValid("dads")); assertFalse(first.isValid(" ")); assertTrue(second.isValid("10")); assertFalse(second.isValid("-10")); assertFalse(and(first, second).isValid(" ")); assertFalse(and(first, second).isValid("dads")); assertTrue(and(first, second).isValid("10")); assertFalse(and(first, second).isValid("-10")); } }
@Provides @Named("logViewRowsNumber") public PreferenceIntTextField logViewRowsNumber(UserContext userContext) { PreferenceIntTextField logRowsNumber = new PreferenceIntTextField(IntUserPreference.LOGVIEW_ROWS_NUMBER, userContext, Validators.positiveInteger()); logRowsNumber.setText(Integer.toString(userContext.getNumberOfLogRows())); logRowsNumber.setErrorMessage( DefaultI18nContext.getInstance().i18n("Maximum number of rows mast be a positive number")); logRowsNumber.setId("logViewRowsNumber"); logRowsNumber.validProperty().addListener((o, oldVal, newVal) -> { if (newVal == ValidationState.VALID) { eventStudio().broadcast(new MaxLogRowsChangedEvent()); } }); return logRowsNumber; }
@Test public void testAllowBlank() { Assert.assertFalse(victim.isValid("")); Assert.assertTrue(Validators.validEmpty(victim).isValid("")); }
PreferenceBrowsableDirectoryField(StringUserPreference preference, UserContext userContext) { getTextField().setValidator(validEmpty(existingDirectory())); requireNotNull(preference, "Preference cannot be null"); requireNotNull(userContext, "UserContext cannot be null"); getTextField().validProperty() .addListener(new PreferenceSetterOnValidState(preference, getTextField(), userContext)); } }
@Test public void allowBlank() { Validator<String> victim = Validators.existingFileType(FileType.HTML); Assert.assertFalse(victim.isValid("")); Assert.assertTrue(Validators.validEmpty(victim).isValid("")); }
@Test public void notExistingValid() { Validator<String> victim = Validators.fileType(FileType.ALL, false); Assert.assertTrue(victim.isValid("/Chuck/Norris")); } }
BookmarksLevelComboBox() { validationSupport.setValidator(Validators.alwaysFalse()); setEditable(true); getSelectionModel().selectFirst(); valueProperty().addListener((o, oldVal, newVal) -> validate()); validationSupport.validationStateProperty().addListener(o -> { if (validationSupport.validationStateProperty().get() == ValidationState.INVALID) { getEditor().getStyleClass().addAll(Style.INVALID.css()); } else { getEditor().getStyleClass().removeAll(Style.INVALID.css()); } }); getEditor().focusedProperty().addListener((obs, old, isFocused) -> { // workaround for https://bugs.openjdk.java.net/browse/JDK-8136838 if (!isFocused) { String newVal = getEditor().getText(); if (nonNull(newVal) && !newVal.equals(getValue())) { setValue(newVal); } } }); }
SplitOptionsPane() { this.field.setOnEnterValidation(true); this.field.setEnableInvalidStyle(true); this.field.setPromptText(DefaultI18nContext.getInstance().i18n("Set the size to split at")); this.field.setValidator(Validators.positiveInteger()); this.field.setErrorMessage(DefaultI18nContext.getInstance().i18n("Size must be a number")); this.field.setId("sizeField"); getStyleClass().addAll(Style.CONTAINER.css()); getStyleClass().addAll(Style.HCONTAINER.css()); getChildren().addAll(new Label(DefaultI18nContext.getInstance().i18n("Split at this size:")), this.field); Arrays.stream(SizeUnit.values()).map(SizeUnitRadio::new).forEach(r -> { r.setToggleGroup(group); getChildren().add(r); }); group.getToggles().stream().findFirst().ifPresent(t -> t.setSelected(true)); }
@Test public void testAllowBlank() { Assert.assertFalse(victim.isValid("")); Assert.assertTrue(Validators.validEmpty(victim).isValid("")); } }
public SplitByEveryRadioButton(ValidableTextField field) { super(DefaultI18nContext.getInstance().i18n("Split by every \"n\" pages")); this.field = field; this.field.setOnEnterValidation(true); this.field.setEnableInvalidStyle(true); this.field.setPromptText(DefaultI18nContext.getInstance().i18n("Number of pages")); this.field.setValidator(Validators.positiveInteger()); this.field.setErrorMessage(DefaultI18nContext.getInstance().i18n("Invalid number of pages")); }
@Test public void allowBlank() { assertFalse(victim.isValid("")); assertTrue(Validators.validEmpty(victim).isValid("")); } }
@Test(expected = IllegalArgumentException.class) public void invalidLower() { Validators.positiveIntRange(0, 5); }
@Test public void testAllowBlank() { Assert.assertFalse(victim.isValid("")); Assert.assertTrue(Validators.validEmpty(victim).isValid("")); } }
@Test(expected = IllegalArgumentException.class) public void invalidUpper() { Validators.positiveIntRange(1, 0); }
@Test public void testAllowBlank() { assertFalse(victim.isValid("")); assertTrue(Validators.validEmpty(victim).isValid("")); } }