#ifndef WebInputElement_h
#define WebInputElement_h
#include "WebFormControlElement.h"
#if WEBKIT_IMPLEMENTATION
namespace WebCore { class HTMLInputElement; }
#endif
namespace WebKit {
class WebInputElement : public WebFormControlElement {
public:
WebInputElement() : WebFormControlElement() { }
WebInputElement(const WebInputElement& element) : WebFormControlElement(element) { }
WebInputElement& operator=(const WebInputElement& element)
{
WebFormControlElement::assign(element);
return *this;
}
void assign(const WebInputElement& element) { WebFormControlElement::assign(element); }
WEBKIT_API bool isTextField() const;
WEBKIT_API bool isText() const;
WEBKIT_API bool isPasswordField() const;
WEBKIT_API bool isImageButton() const;
WEBKIT_API bool autoComplete() const;
WEBKIT_API int maxLength() const;
WEBKIT_API bool isActivatedSubmit() const;
WEBKIT_API void setActivatedSubmit(bool);
WEBKIT_API int size() const;
WEBKIT_API void setValue(const WebString&, bool sendChangeEvent = false);
WEBKIT_API WebString value() const;
WEBKIT_API void setSuggestedValue(const WebString&);
WEBKIT_API WebString suggestedValue() const;
WEBKIT_API void setPlaceholder(const WebString&);
WEBKIT_API WebString placeholder() const;
WEBKIT_API bool isAutofilled() const;
WEBKIT_API void setAutofilled(bool);
WEBKIT_API void setSelectionRange(int, int);
WEBKIT_API int selectionStart() const;
WEBKIT_API int selectionEnd() const;
WEBKIT_API bool isValidValue(const WebString&) const;
WEBKIT_API bool isChecked() const;
WEBKIT_API static int defaultMaxLength();
#if WEBKIT_IMPLEMENTATION
WebInputElement(const WTF::PassRefPtr<WebCore::HTMLInputElement>&);
WebInputElement& operator=(const WTF::PassRefPtr<WebCore::HTMLInputElement>&);
operator WTF::PassRefPtr<WebCore::HTMLInputElement>() const;
#endif
};
WEBKIT_API WebInputElement* toWebInputElement(WebElement*);
inline const WebInputElement* toWebInputElement(const WebElement* element)
{
return toWebInputElement(const_cast<WebElement*>(element));
}
}
#endif