HTMLButtonElement.h [plain text]
#pragma once
#include "HTMLFormControlElement.h"
namespace WebCore {
class RenderButton;
class HTMLButtonElement final : public HTMLFormControlElement {
public:
static Ref<HTMLButtonElement> create(const QualifiedName&, Document&, HTMLFormElement*);
WEBCORE_EXPORT void setType(const AtomicString&);
const AtomicString& value() const;
bool willRespondToMouseClickEvents() final;
RenderButton* renderer() const;
private:
HTMLButtonElement(const QualifiedName& tagName, Document&, HTMLFormElement*);
enum Type { SUBMIT, RESET, BUTTON };
const AtomicString& formControlType() const final;
RenderPtr<RenderElement> createElementRenderer(RenderStyle&&, const RenderTreePosition&) final;
bool alwaysCreateUserAgentShadowRoot() const final { return false; }
void parseAttribute(const QualifiedName&, const AtomicString&) final;
bool isPresentationAttribute(const QualifiedName&) const final;
void defaultEventHandler(Event&) final;
bool appendFormData(FormDataList&, bool) final;
bool isEnumeratable() const final { return true; }
bool supportLabels() const final { return true; }
bool isSuccessfulSubmitButton() const final;
bool matchesDefaultPseudoClass() const final;
bool isActivatedSubmit() const final;
void setActivatedSubmit(bool flag) final;
void accessKeyAction(bool sendMouseEvents) final;
bool isURLAttribute(const Attribute&) const final;
bool canStartSelection() const final { return false; }
bool isOptionalFormControl() const final { return true; }
bool computeWillValidate() const final;
Type m_type;
bool m_isActivatedSubmit;
};
}