aboutsummaryrefslogtreecommitdiffstats
path: root/src/com/vaadin/ui/DateField.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/com/vaadin/ui/DateField.java')
-rw-r--r--src/com/vaadin/ui/DateField.java34
1 files changed, 34 insertions, 0 deletions
diff --git a/src/com/vaadin/ui/DateField.java b/src/com/vaadin/ui/DateField.java
index 789ae06b48..425040a016 100644
--- a/src/com/vaadin/ui/DateField.java
+++ b/src/com/vaadin/ui/DateField.java
@@ -116,6 +116,8 @@ public class DateField extends AbstractField {
*/
private String dateString;
+ private boolean lenient = false;
+
/* Constructors */
/**
@@ -202,6 +204,10 @@ public class DateField extends AbstractField {
target.addAttribute("format", dateFormat);
}
+ if (!isLenient()) {
+ target.addAttribute("strict", true);
+ }
+
target.addAttribute("type", type);
// Gets the calendar
@@ -511,4 +517,32 @@ public class DateField extends AbstractField {
return dateFormat;
}
+ /**
+ * Specifies whether or not date/time interpretation in component is to be
+ * lenient.
+ *
+ * @see Calendar#setLenient(boolean)
+ * @see #isLenient()
+ *
+ * @param lenient
+ * true if the lenient mode is to be turned on; false if it is to
+ * be turned off.
+ */
+ public void setLenient(boolean lenient) {
+ this.lenient = lenient;
+ requestRepaint();
+ }
+
+ /**
+ * Specifies whether or not date/time interpretation is to be lenient.
+ *
+ * @see #setLenient(boolean)
+ *
+ * @return true if the interpretation mode of this calendar is lenient;
+ * false otherwise.
+ */
+ public boolean isLenient() {
+ return lenient;
+ }
+
}