@Override
	protected boolean checkEditorValueValidity() {

		boolean isValidLower = hasValidValue(lowerSpinner);
		boolean isValidUpper = hasValidValue(upperSpinner);

		markSpinnerAsValid(lowerSpinner, isValidLower);
		markSpinnerAsValid(upperSpinner, isValidUpper);

		errorMessage = "";

		if (!isValidLower && !isValidUpper) {
			errorMessage = "Invalid lower and upper bounds!";
			return false;
		}

		if (!isValidLower) {
			errorMessage = "Invalid lower bounds!";
			return false;
		}
		if (!isValidUpper) {
			errorMessage = "Invalid upper bounds!";
			return false;
		}

		LocalDate lVal = (LocalDate) lowerSpinnerModel.getValue();
		LocalDate uVal = (LocalDate) upperSpinnerModel.getValue();
		if (lVal.compareTo(uVal) > 0) {
			errorMessage = "Upper bounds value must be greater than lower bounds!";
			return false;
		}
		return true;

	}
Constructor.

@param constraint Date constraint for which this component is an editor.
Ghidra/Framework/Docking/src/main/java/docking/widgets/table/constrainteditor/DateRangeConstraintEditor.java