Remove SnowLeopard expected results.
[WebKit-https.git] / Source / WebCore / html / shadow / DateTimeFieldElement.h
index 066b61f..3148ccc 100644 (file)
 #ifndef DateTimeFieldElement_h
 #define DateTimeFieldElement_h
 
-#if ENABLE(INPUT_TYPE_TIME_MULTIPLE_FIELDS)
-
+#if ENABLE(INPUT_MULTIPLE_FIELDS_UI)
 #include "HTMLDivElement.h"
 
 namespace WebCore {
 
 class DateComponents;
+class DateTimeFieldsState;
+class Font;
 
 // DateTimeFieldElement is base class of date time field element.
 class DateTimeFieldElement : public HTMLElement {
@@ -44,42 +45,59 @@ public:
         DispatchEvent,
     };
 
-    // FieldEventHandler implementer must call removeEventHandler when
+    // FieldOwner implementer must call removeEventHandler when
     // it doesn't handle event, e.g. at destruction.
-    class FieldEventHandler {
+    class FieldOwner {
     public:
-        virtual ~FieldEventHandler();
+        virtual ~FieldOwner();
+        virtual void didBlurFromField() = 0;
+        virtual void didFocusOnField() = 0;
         virtual void fieldValueChanged() = 0;
-        virtual void focusOnNextField() = 0;
+        virtual bool focusOnNextField(const DateTimeFieldElement&) = 0;
+        virtual bool focusOnPreviousField(const DateTimeFieldElement&) = 0;
+        virtual bool isFieldOwnerDisabled() const = 0;
+        virtual bool isFieldOwnerReadOnly() const = 0;
+        virtual AtomicString localeIdentifier() const = 0;
     };
 
     virtual void defaultEventHandler(Event*) OVERRIDE;
     virtual bool hasValue() const = 0;
-    bool isReadOnly() const;
-    void removeEventHandler() { m_fieldEventHandler = 0; }
-    void setReadOnly();
-    virtual void setEmptyValue(const DateComponents& dateForReadOnlyField, EventBehavior = DispatchNoEvent) = 0;
+    bool isDisabled() const;
+    virtual bool isFocusable() const OVERRIDE FINAL;
+    virtual float maximumWidth(const Font&);
+    virtual void populateDateTimeFieldsState(DateTimeFieldsState&) = 0;
+    void removeEventHandler() { m_fieldOwner = 0; }
+    void setDisabled();
+    virtual void setEmptyValue(EventBehavior = DispatchNoEvent) = 0;
     virtual void setValueAsDate(const DateComponents&) = 0;
+    virtual void setValueAsDateTimeFieldsState(const DateTimeFieldsState&) = 0;
     virtual void setValueAsInteger(int, EventBehavior = DispatchNoEvent) = 0;
     virtual void stepDown() = 0;
     virtual void stepUp() = 0;
     virtual String value() const = 0;
-    double valueAsDouble() const;
-    virtual int valueAsInteger() const = 0;
     virtual String visibleValue() const = 0;
 
 protected:
-    DateTimeFieldElement(Document*, FieldEventHandler&);
+    DateTimeFieldElement(Document*, FieldOwner&);
+    virtual void didBlur();
+    virtual void didFocus();
     void focusOnNextField();
     virtual void handleKeyboardEvent(KeyboardEvent*) = 0;
-    void initialize(const AtomicString&);
-    virtual double unitInMillisecond() const = 0;
+    void initialize(const AtomicString& pseudo, const String& axHelpText, int axMinimum, int axMaximum);
+    Locale& localeForOwner() const;
+    AtomicString localeIdentifier() const;
     void updateVisibleValue(EventBehavior);
+    virtual int valueAsInteger() const = 0;
+    virtual int valueForARIAValueNow() const;
 
 private:
     void defaultKeyboardEventHandler(KeyboardEvent*);
+    virtual bool isDateTimeFieldElement() const OVERRIDE;
+    bool isFieldOwnerDisabled() const;
+    bool isFieldOwnerReadOnly() const;
+    virtual bool supportsFocus() const OVERRIDE FINAL;
 
-    FieldEventHandler* m_fieldEventHandler;
+    FieldOwner* m_fieldOwner;
 };
 
 } // namespace WebCore