{-# LANGUAGE TypeApplications #-}


-- | Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
-- License    : LGPL-2.1
-- Maintainer : Iñaki García Etxebarria
-- 
-- /No description available in the introspection data./

#if (MIN_VERSION_haskell_gi_overloading(1,0,0) && !defined(__HADDOCK_VERSION__))
#define ENABLE_OVERLOADING
#endif

module GI.WebKit2WebExtension.Objects.DOMHTMLButtonElement
    ( 

-- * Exported types
    DOMHTMLButtonElement(..)                ,
    IsDOMHTMLButtonElement                  ,
    toDOMHTMLButtonElement                  ,


 -- * Methods
-- ** Overloaded methods #method:Overloaded methods#

#if defined(ENABLE_OVERLOADING)
    ResolveDOMHTMLButtonElementMethod       ,
#endif


-- ** getAutofocus #method:getAutofocus#

#if defined(ENABLE_OVERLOADING)
    DOMHTMLButtonElementGetAutofocusMethodInfo,
#endif
    dOMHTMLButtonElementGetAutofocus        ,


-- ** getButtonType #method:getButtonType#

#if defined(ENABLE_OVERLOADING)
    DOMHTMLButtonElementGetButtonTypeMethodInfo,
#endif
    dOMHTMLButtonElementGetButtonType       ,


-- ** getDisabled #method:getDisabled#

#if defined(ENABLE_OVERLOADING)
    DOMHTMLButtonElementGetDisabledMethodInfo,
#endif
    dOMHTMLButtonElementGetDisabled         ,


-- ** getForm #method:getForm#

#if defined(ENABLE_OVERLOADING)
    DOMHTMLButtonElementGetFormMethodInfo   ,
#endif
    dOMHTMLButtonElementGetForm             ,


-- ** getName #method:getName#

#if defined(ENABLE_OVERLOADING)
    DOMHTMLButtonElementGetNameMethodInfo   ,
#endif
    dOMHTMLButtonElementGetName             ,


-- ** getValue #method:getValue#

#if defined(ENABLE_OVERLOADING)
    DOMHTMLButtonElementGetValueMethodInfo  ,
#endif
    dOMHTMLButtonElementGetValue            ,


-- ** getWillValidate #method:getWillValidate#

#if defined(ENABLE_OVERLOADING)
    DOMHTMLButtonElementGetWillValidateMethodInfo,
#endif
    dOMHTMLButtonElementGetWillValidate     ,


-- ** setAutofocus #method:setAutofocus#

#if defined(ENABLE_OVERLOADING)
    DOMHTMLButtonElementSetAutofocusMethodInfo,
#endif
    dOMHTMLButtonElementSetAutofocus        ,


-- ** setButtonType #method:setButtonType#

#if defined(ENABLE_OVERLOADING)
    DOMHTMLButtonElementSetButtonTypeMethodInfo,
#endif
    dOMHTMLButtonElementSetButtonType       ,


-- ** setDisabled #method:setDisabled#

#if defined(ENABLE_OVERLOADING)
    DOMHTMLButtonElementSetDisabledMethodInfo,
#endif
    dOMHTMLButtonElementSetDisabled         ,


-- ** setName #method:setName#

#if defined(ENABLE_OVERLOADING)
    DOMHTMLButtonElementSetNameMethodInfo   ,
#endif
    dOMHTMLButtonElementSetName             ,


-- ** setValue #method:setValue#

#if defined(ENABLE_OVERLOADING)
    DOMHTMLButtonElementSetValueMethodInfo  ,
#endif
    dOMHTMLButtonElementSetValue            ,




 -- * Properties
-- ** autofocus #attr:autofocus#
-- | /No description available in the introspection data./

#if defined(ENABLE_OVERLOADING)
    DOMHTMLButtonElementAutofocusPropertyInfo,
#endif
    constructDOMHTMLButtonElementAutofocus  ,
#if defined(ENABLE_OVERLOADING)
    dOMHTMLButtonElementAutofocus           ,
#endif
    getDOMHTMLButtonElementAutofocus        ,
    setDOMHTMLButtonElementAutofocus        ,


-- ** disabled #attr:disabled#
-- | /No description available in the introspection data./

#if defined(ENABLE_OVERLOADING)
    DOMHTMLButtonElementDisabledPropertyInfo,
#endif
    constructDOMHTMLButtonElementDisabled   ,
#if defined(ENABLE_OVERLOADING)
    dOMHTMLButtonElementDisabled            ,
#endif
    getDOMHTMLButtonElementDisabled         ,
    setDOMHTMLButtonElementDisabled         ,


-- ** form #attr:form#
-- | /No description available in the introspection data./

#if defined(ENABLE_OVERLOADING)
    DOMHTMLButtonElementFormPropertyInfo    ,
#endif
#if defined(ENABLE_OVERLOADING)
    dOMHTMLButtonElementForm                ,
#endif
    getDOMHTMLButtonElementForm             ,


-- ** name #attr:name#
-- | /No description available in the introspection data./

#if defined(ENABLE_OVERLOADING)
    DOMHTMLButtonElementNamePropertyInfo    ,
#endif
    constructDOMHTMLButtonElementName       ,
#if defined(ENABLE_OVERLOADING)
    dOMHTMLButtonElementName                ,
#endif
    getDOMHTMLButtonElementName             ,
    setDOMHTMLButtonElementName             ,


-- ** type #attr:type#
-- | /No description available in the introspection data./

#if defined(ENABLE_OVERLOADING)
    DOMHTMLButtonElementTypePropertyInfo    ,
#endif
    clearDOMHTMLButtonElementType           ,
    constructDOMHTMLButtonElementType       ,
#if defined(ENABLE_OVERLOADING)
    dOMHTMLButtonElementType                ,
#endif
    getDOMHTMLButtonElementType             ,
    setDOMHTMLButtonElementType             ,


-- ** value #attr:value#
-- | /No description available in the introspection data./

#if defined(ENABLE_OVERLOADING)
    DOMHTMLButtonElementValuePropertyInfo   ,
#endif
    constructDOMHTMLButtonElementValue      ,
#if defined(ENABLE_OVERLOADING)
    dOMHTMLButtonElementValue               ,
#endif
    getDOMHTMLButtonElementValue            ,
    setDOMHTMLButtonElementValue            ,


-- ** willValidate #attr:willValidate#
-- | /No description available in the introspection data./

#if defined(ENABLE_OVERLOADING)
    DOMHTMLButtonElementWillValidatePropertyInfo,
#endif
#if defined(ENABLE_OVERLOADING)
    dOMHTMLButtonElementWillValidate        ,
#endif
    getDOMHTMLButtonElementWillValidate     ,




    ) where

import Data.GI.Base.ShortPrelude
import qualified Data.GI.Base.ShortPrelude as SP
import qualified Data.GI.Base.Overloading as O
import qualified Prelude as P

import qualified Data.GI.Base.Attributes as GI.Attributes
import qualified Data.GI.Base.BasicTypes as B.Types
import qualified Data.GI.Base.ManagedPtr as B.ManagedPtr
import qualified Data.GI.Base.GClosure as B.GClosure
import qualified Data.GI.Base.GError as B.GError
import qualified Data.GI.Base.GVariant as B.GVariant
import qualified Data.GI.Base.GValue as B.GValue
import qualified Data.GI.Base.GParamSpec as B.GParamSpec
import qualified Data.GI.Base.CallStack as B.CallStack
import qualified Data.GI.Base.Properties as B.Properties
import qualified Data.GI.Base.Signals as B.Signals
import qualified Control.Monad.IO.Class as MIO
import qualified Data.Text as T
import qualified Data.ByteString.Char8 as B
import qualified Data.Map as Map
import qualified Foreign.Ptr as FP
import qualified GHC.OverloadedLabels as OL

import qualified GI.GObject.Objects.Object as GObject.Object
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Interfaces.DOMEventTarget as WebKit2WebExtension.DOMEventTarget
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Objects.DOMElement as WebKit2WebExtension.DOMElement
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Objects.DOMHTMLElement as WebKit2WebExtension.DOMHTMLElement
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Objects.DOMHTMLFormElement as WebKit2WebExtension.DOMHTMLFormElement
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Objects.DOMNode as WebKit2WebExtension.DOMNode
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Objects.DOMObject as WebKit2WebExtension.DOMObject

-- | Memory-managed wrapper type.
newtype DOMHTMLButtonElement = DOMHTMLButtonElement (SP.ManagedPtr DOMHTMLButtonElement)
    deriving (DOMHTMLButtonElement -> DOMHTMLButtonElement -> Bool
(DOMHTMLButtonElement -> DOMHTMLButtonElement -> Bool)
-> (DOMHTMLButtonElement -> DOMHTMLButtonElement -> Bool)
-> Eq DOMHTMLButtonElement
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DOMHTMLButtonElement -> DOMHTMLButtonElement -> Bool
$c/= :: DOMHTMLButtonElement -> DOMHTMLButtonElement -> Bool
== :: DOMHTMLButtonElement -> DOMHTMLButtonElement -> Bool
$c== :: DOMHTMLButtonElement -> DOMHTMLButtonElement -> Bool
Eq)

instance SP.ManagedPtrNewtype DOMHTMLButtonElement where
    toManagedPtr :: DOMHTMLButtonElement -> ManagedPtr DOMHTMLButtonElement
toManagedPtr (DOMHTMLButtonElement ManagedPtr DOMHTMLButtonElement
p) = ManagedPtr DOMHTMLButtonElement
p

foreign import ccall "webkit_dom_html_button_element_get_type"
    c_webkit_dom_html_button_element_get_type :: IO B.Types.GType

instance B.Types.TypedObject DOMHTMLButtonElement where
    glibType :: IO GType
glibType = IO GType
c_webkit_dom_html_button_element_get_type

instance B.Types.GObject DOMHTMLButtonElement

-- | Convert 'DOMHTMLButtonElement' to and from 'Data.GI.Base.GValue.GValue' with 'Data.GI.Base.GValue.toGValue' and 'Data.GI.Base.GValue.fromGValue'.
instance B.GValue.IsGValue DOMHTMLButtonElement where
    toGValue :: DOMHTMLButtonElement -> IO GValue
toGValue DOMHTMLButtonElement
o = do
        GType
gtype <- IO GType
c_webkit_dom_html_button_element_get_type
        DOMHTMLButtonElement
-> (Ptr DOMHTMLButtonElement -> IO GValue) -> IO GValue
forall a c.
(HasCallStack, ManagedPtrNewtype a) =>
a -> (Ptr a -> IO c) -> IO c
B.ManagedPtr.withManagedPtr DOMHTMLButtonElement
o (GType
-> (GValue -> Ptr DOMHTMLButtonElement -> IO ())
-> Ptr DOMHTMLButtonElement
-> IO GValue
forall a. GType -> (GValue -> a -> IO ()) -> a -> IO GValue
B.GValue.buildGValue GType
gtype GValue -> Ptr DOMHTMLButtonElement -> IO ()
forall a. GObject a => GValue -> Ptr a -> IO ()
B.GValue.set_object)
        
    fromGValue :: GValue -> IO DOMHTMLButtonElement
fromGValue GValue
gv = do
        Ptr DOMHTMLButtonElement
ptr <- GValue -> IO (Ptr DOMHTMLButtonElement)
forall b. GObject b => GValue -> IO (Ptr b)
B.GValue.get_object GValue
gv :: IO (Ptr DOMHTMLButtonElement)
        (ManagedPtr DOMHTMLButtonElement -> DOMHTMLButtonElement)
-> Ptr DOMHTMLButtonElement -> IO DOMHTMLButtonElement
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
B.ManagedPtr.newObject ManagedPtr DOMHTMLButtonElement -> DOMHTMLButtonElement
DOMHTMLButtonElement Ptr DOMHTMLButtonElement
ptr
        
    

-- | Type class for types which can be safely cast to `DOMHTMLButtonElement`, for instance with `toDOMHTMLButtonElement`.
class (SP.GObject o, O.IsDescendantOf DOMHTMLButtonElement o) => IsDOMHTMLButtonElement o
instance (SP.GObject o, O.IsDescendantOf DOMHTMLButtonElement o) => IsDOMHTMLButtonElement o

instance O.HasParentTypes DOMHTMLButtonElement
type instance O.ParentTypes DOMHTMLButtonElement = '[WebKit2WebExtension.DOMHTMLElement.DOMHTMLElement, WebKit2WebExtension.DOMElement.DOMElement, WebKit2WebExtension.DOMNode.DOMNode, WebKit2WebExtension.DOMObject.DOMObject, GObject.Object.Object, WebKit2WebExtension.DOMEventTarget.DOMEventTarget]

-- | Cast to `DOMHTMLButtonElement`, for types for which this is known to be safe. For general casts, use `Data.GI.Base.ManagedPtr.castTo`.
toDOMHTMLButtonElement :: (MonadIO m, IsDOMHTMLButtonElement o) => o -> m DOMHTMLButtonElement
toDOMHTMLButtonElement :: o -> m DOMHTMLButtonElement
toDOMHTMLButtonElement = IO DOMHTMLButtonElement -> m DOMHTMLButtonElement
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO DOMHTMLButtonElement -> m DOMHTMLButtonElement)
-> (o -> IO DOMHTMLButtonElement) -> o -> m DOMHTMLButtonElement
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (ManagedPtr DOMHTMLButtonElement -> DOMHTMLButtonElement)
-> o -> IO DOMHTMLButtonElement
forall o o'.
(HasCallStack, ManagedPtrNewtype o, TypedObject o,
 ManagedPtrNewtype o', TypedObject o') =>
(ManagedPtr o' -> o') -> o -> IO o'
unsafeCastTo ManagedPtr DOMHTMLButtonElement -> DOMHTMLButtonElement
DOMHTMLButtonElement

#if defined(ENABLE_OVERLOADING)
type family ResolveDOMHTMLButtonElementMethod (t :: Symbol) (o :: *) :: * where
    ResolveDOMHTMLButtonElementMethod "addEventListener" o = WebKit2WebExtension.DOMEventTarget.DOMEventTargetAddEventListenerMethodInfo
    ResolveDOMHTMLButtonElementMethod "appendChild" o = WebKit2WebExtension.DOMNode.DOMNodeAppendChildMethodInfo
    ResolveDOMHTMLButtonElementMethod "bindProperty" o = GObject.Object.ObjectBindPropertyMethodInfo
    ResolveDOMHTMLButtonElementMethod "bindPropertyFull" o = GObject.Object.ObjectBindPropertyFullMethodInfo
    ResolveDOMHTMLButtonElementMethod "blur" o = WebKit2WebExtension.DOMElement.DOMElementBlurMethodInfo
    ResolveDOMHTMLButtonElementMethod "click" o = WebKit2WebExtension.DOMHTMLElement.DOMHTMLElementClickMethodInfo
    ResolveDOMHTMLButtonElementMethod "cloneNodeWithError" o = WebKit2WebExtension.DOMNode.DOMNodeCloneNodeWithErrorMethodInfo
    ResolveDOMHTMLButtonElementMethod "closest" o = WebKit2WebExtension.DOMElement.DOMElementClosestMethodInfo
    ResolveDOMHTMLButtonElementMethod "compareDocumentPosition" o = WebKit2WebExtension.DOMNode.DOMNodeCompareDocumentPositionMethodInfo
    ResolveDOMHTMLButtonElementMethod "contains" o = WebKit2WebExtension.DOMNode.DOMNodeContainsMethodInfo
    ResolveDOMHTMLButtonElementMethod "dispatchEvent" o = WebKit2WebExtension.DOMEventTarget.DOMEventTargetDispatchEventMethodInfo
    ResolveDOMHTMLButtonElementMethod "focus" o = WebKit2WebExtension.DOMElement.DOMElementFocusMethodInfo
    ResolveDOMHTMLButtonElementMethod "forceFloating" o = GObject.Object.ObjectForceFloatingMethodInfo
    ResolveDOMHTMLButtonElementMethod "freezeNotify" o = GObject.Object.ObjectFreezeNotifyMethodInfo
    ResolveDOMHTMLButtonElementMethod "getv" o = GObject.Object.ObjectGetvMethodInfo
    ResolveDOMHTMLButtonElementMethod "hasAttribute" o = WebKit2WebExtension.DOMElement.DOMElementHasAttributeMethodInfo
    ResolveDOMHTMLButtonElementMethod "hasAttributeNs" o = WebKit2WebExtension.DOMElement.DOMElementHasAttributeNsMethodInfo
    ResolveDOMHTMLButtonElementMethod "hasAttributes" o = WebKit2WebExtension.DOMElement.DOMElementHasAttributesMethodInfo
    ResolveDOMHTMLButtonElementMethod "hasChildNodes" o = WebKit2WebExtension.DOMNode.DOMNodeHasChildNodesMethodInfo
    ResolveDOMHTMLButtonElementMethod "htmlInputElementGetAutoFilled" o = WebKit2WebExtension.DOMElement.DOMElementHtmlInputElementGetAutoFilledMethodInfo
    ResolveDOMHTMLButtonElementMethod "htmlInputElementIsUserEdited" o = WebKit2WebExtension.DOMElement.DOMElementHtmlInputElementIsUserEditedMethodInfo
    ResolveDOMHTMLButtonElementMethod "htmlInputElementSetAutoFilled" o = WebKit2WebExtension.DOMElement.DOMElementHtmlInputElementSetAutoFilledMethodInfo
    ResolveDOMHTMLButtonElementMethod "htmlInputElementSetEditingValue" o = WebKit2WebExtension.DOMElement.DOMElementHtmlInputElementSetEditingValueMethodInfo
    ResolveDOMHTMLButtonElementMethod "insertAdjacentElement" o = WebKit2WebExtension.DOMElement.DOMElementInsertAdjacentElementMethodInfo
    ResolveDOMHTMLButtonElementMethod "insertAdjacentHtml" o = WebKit2WebExtension.DOMElement.DOMElementInsertAdjacentHtmlMethodInfo
    ResolveDOMHTMLButtonElementMethod "insertAdjacentText" o = WebKit2WebExtension.DOMElement.DOMElementInsertAdjacentTextMethodInfo
    ResolveDOMHTMLButtonElementMethod "insertBefore" o = WebKit2WebExtension.DOMNode.DOMNodeInsertBeforeMethodInfo
    ResolveDOMHTMLButtonElementMethod "isDefaultNamespace" o = WebKit2WebExtension.DOMNode.DOMNodeIsDefaultNamespaceMethodInfo
    ResolveDOMHTMLButtonElementMethod "isEqualNode" o = WebKit2WebExtension.DOMNode.DOMNodeIsEqualNodeMethodInfo
    ResolveDOMHTMLButtonElementMethod "isFloating" o = GObject.Object.ObjectIsFloatingMethodInfo
    ResolveDOMHTMLButtonElementMethod "isSameNode" o = WebKit2WebExtension.DOMNode.DOMNodeIsSameNodeMethodInfo
    ResolveDOMHTMLButtonElementMethod "isSupported" o = WebKit2WebExtension.DOMNode.DOMNodeIsSupportedMethodInfo
    ResolveDOMHTMLButtonElementMethod "lookupNamespaceUri" o = WebKit2WebExtension.DOMNode.DOMNodeLookupNamespaceUriMethodInfo
    ResolveDOMHTMLButtonElementMethod "lookupPrefix" o = WebKit2WebExtension.DOMNode.DOMNodeLookupPrefixMethodInfo
    ResolveDOMHTMLButtonElementMethod "matches" o = WebKit2WebExtension.DOMElement.DOMElementMatchesMethodInfo
    ResolveDOMHTMLButtonElementMethod "normalize" o = WebKit2WebExtension.DOMNode.DOMNodeNormalizeMethodInfo
    ResolveDOMHTMLButtonElementMethod "notify" o = GObject.Object.ObjectNotifyMethodInfo
    ResolveDOMHTMLButtonElementMethod "notifyByPspec" o = GObject.Object.ObjectNotifyByPspecMethodInfo
    ResolveDOMHTMLButtonElementMethod "querySelector" o = WebKit2WebExtension.DOMElement.DOMElementQuerySelectorMethodInfo
    ResolveDOMHTMLButtonElementMethod "querySelectorAll" o = WebKit2WebExtension.DOMElement.DOMElementQuerySelectorAllMethodInfo
    ResolveDOMHTMLButtonElementMethod "ref" o = GObject.Object.ObjectRefMethodInfo
    ResolveDOMHTMLButtonElementMethod "refSink" o = GObject.Object.ObjectRefSinkMethodInfo
    ResolveDOMHTMLButtonElementMethod "remove" o = WebKit2WebExtension.DOMElement.DOMElementRemoveMethodInfo
    ResolveDOMHTMLButtonElementMethod "removeAttribute" o = WebKit2WebExtension.DOMElement.DOMElementRemoveAttributeMethodInfo
    ResolveDOMHTMLButtonElementMethod "removeAttributeNode" o = WebKit2WebExtension.DOMElement.DOMElementRemoveAttributeNodeMethodInfo
    ResolveDOMHTMLButtonElementMethod "removeAttributeNs" o = WebKit2WebExtension.DOMElement.DOMElementRemoveAttributeNsMethodInfo
    ResolveDOMHTMLButtonElementMethod "removeChild" o = WebKit2WebExtension.DOMNode.DOMNodeRemoveChildMethodInfo
    ResolveDOMHTMLButtonElementMethod "removeEventListener" o = WebKit2WebExtension.DOMEventTarget.DOMEventTargetRemoveEventListenerMethodInfo
    ResolveDOMHTMLButtonElementMethod "replaceChild" o = WebKit2WebExtension.DOMNode.DOMNodeReplaceChildMethodInfo
    ResolveDOMHTMLButtonElementMethod "requestPointerLock" o = WebKit2WebExtension.DOMElement.DOMElementRequestPointerLockMethodInfo
    ResolveDOMHTMLButtonElementMethod "runDispose" o = GObject.Object.ObjectRunDisposeMethodInfo
    ResolveDOMHTMLButtonElementMethod "scrollByLines" o = WebKit2WebExtension.DOMElement.DOMElementScrollByLinesMethodInfo
    ResolveDOMHTMLButtonElementMethod "scrollByPages" o = WebKit2WebExtension.DOMElement.DOMElementScrollByPagesMethodInfo
    ResolveDOMHTMLButtonElementMethod "scrollIntoView" o = WebKit2WebExtension.DOMElement.DOMElementScrollIntoViewMethodInfo
    ResolveDOMHTMLButtonElementMethod "scrollIntoViewIfNeeded" o = WebKit2WebExtension.DOMElement.DOMElementScrollIntoViewIfNeededMethodInfo
    ResolveDOMHTMLButtonElementMethod "stealData" o = GObject.Object.ObjectStealDataMethodInfo
    ResolveDOMHTMLButtonElementMethod "stealQdata" o = GObject.Object.ObjectStealQdataMethodInfo
    ResolveDOMHTMLButtonElementMethod "thawNotify" o = GObject.Object.ObjectThawNotifyMethodInfo
    ResolveDOMHTMLButtonElementMethod "unref" o = GObject.Object.ObjectUnrefMethodInfo
    ResolveDOMHTMLButtonElementMethod "watchClosure" o = GObject.Object.ObjectWatchClosureMethodInfo
    ResolveDOMHTMLButtonElementMethod "webkitMatchesSelector" o = WebKit2WebExtension.DOMElement.DOMElementWebkitMatchesSelectorMethodInfo
    ResolveDOMHTMLButtonElementMethod "webkitRequestFullscreen" o = WebKit2WebExtension.DOMElement.DOMElementWebkitRequestFullscreenMethodInfo
    ResolveDOMHTMLButtonElementMethod "getAccessKey" o = WebKit2WebExtension.DOMHTMLElement.DOMHTMLElementGetAccessKeyMethodInfo
    ResolveDOMHTMLButtonElementMethod "getAttribute" o = WebKit2WebExtension.DOMElement.DOMElementGetAttributeMethodInfo
    ResolveDOMHTMLButtonElementMethod "getAttributeNode" o = WebKit2WebExtension.DOMElement.DOMElementGetAttributeNodeMethodInfo
    ResolveDOMHTMLButtonElementMethod "getAttributeNodeNs" o = WebKit2WebExtension.DOMElement.DOMElementGetAttributeNodeNsMethodInfo
    ResolveDOMHTMLButtonElementMethod "getAttributeNs" o = WebKit2WebExtension.DOMElement.DOMElementGetAttributeNsMethodInfo
    ResolveDOMHTMLButtonElementMethod "getAttributes" o = WebKit2WebExtension.DOMElement.DOMElementGetAttributesMethodInfo
    ResolveDOMHTMLButtonElementMethod "getAutofocus" o = DOMHTMLButtonElementGetAutofocusMethodInfo
    ResolveDOMHTMLButtonElementMethod "getBaseUri" o = WebKit2WebExtension.DOMNode.DOMNodeGetBaseUriMethodInfo
    ResolveDOMHTMLButtonElementMethod "getBoundingClientRect" o = WebKit2WebExtension.DOMElement.DOMElementGetBoundingClientRectMethodInfo
    ResolveDOMHTMLButtonElementMethod "getButtonType" o = DOMHTMLButtonElementGetButtonTypeMethodInfo
    ResolveDOMHTMLButtonElementMethod "getChildElementCount" o = WebKit2WebExtension.DOMElement.DOMElementGetChildElementCountMethodInfo
    ResolveDOMHTMLButtonElementMethod "getChildNodes" o = WebKit2WebExtension.DOMNode.DOMNodeGetChildNodesMethodInfo
    ResolveDOMHTMLButtonElementMethod "getChildren" o = WebKit2WebExtension.DOMHTMLElement.DOMHTMLElementGetChildrenMethodInfo
    ResolveDOMHTMLButtonElementMethod "getClassList" o = WebKit2WebExtension.DOMElement.DOMElementGetClassListMethodInfo
    ResolveDOMHTMLButtonElementMethod "getClassName" o = WebKit2WebExtension.DOMElement.DOMElementGetClassNameMethodInfo
    ResolveDOMHTMLButtonElementMethod "getClientHeight" o = WebKit2WebExtension.DOMElement.DOMElementGetClientHeightMethodInfo
    ResolveDOMHTMLButtonElementMethod "getClientLeft" o = WebKit2WebExtension.DOMElement.DOMElementGetClientLeftMethodInfo
    ResolveDOMHTMLButtonElementMethod "getClientRects" o = WebKit2WebExtension.DOMElement.DOMElementGetClientRectsMethodInfo
    ResolveDOMHTMLButtonElementMethod "getClientTop" o = WebKit2WebExtension.DOMElement.DOMElementGetClientTopMethodInfo
    ResolveDOMHTMLButtonElementMethod "getClientWidth" o = WebKit2WebExtension.DOMElement.DOMElementGetClientWidthMethodInfo
    ResolveDOMHTMLButtonElementMethod "getContentEditable" o = WebKit2WebExtension.DOMHTMLElement.DOMHTMLElementGetContentEditableMethodInfo
    ResolveDOMHTMLButtonElementMethod "getData" o = GObject.Object.ObjectGetDataMethodInfo
    ResolveDOMHTMLButtonElementMethod "getDir" o = WebKit2WebExtension.DOMHTMLElement.DOMHTMLElementGetDirMethodInfo
    ResolveDOMHTMLButtonElementMethod "getDisabled" o = DOMHTMLButtonElementGetDisabledMethodInfo
    ResolveDOMHTMLButtonElementMethod "getDraggable" o = WebKit2WebExtension.DOMHTMLElement.DOMHTMLElementGetDraggableMethodInfo
    ResolveDOMHTMLButtonElementMethod "getElementsByClassName" o = WebKit2WebExtension.DOMElement.DOMElementGetElementsByClassNameMethodInfo
    ResolveDOMHTMLButtonElementMethod "getElementsByClassNameAsHtmlCollection" o = WebKit2WebExtension.DOMElement.DOMElementGetElementsByClassNameAsHtmlCollectionMethodInfo
    ResolveDOMHTMLButtonElementMethod "getElementsByTagName" o = WebKit2WebExtension.DOMElement.DOMElementGetElementsByTagNameMethodInfo
    ResolveDOMHTMLButtonElementMethod "getElementsByTagNameAsHtmlCollection" o = WebKit2WebExtension.DOMElement.DOMElementGetElementsByTagNameAsHtmlCollectionMethodInfo
    ResolveDOMHTMLButtonElementMethod "getElementsByTagNameNs" o = WebKit2WebExtension.DOMElement.DOMElementGetElementsByTagNameNsMethodInfo
    ResolveDOMHTMLButtonElementMethod "getElementsByTagNameNsAsHtmlCollection" o = WebKit2WebExtension.DOMElement.DOMElementGetElementsByTagNameNsAsHtmlCollectionMethodInfo
    ResolveDOMHTMLButtonElementMethod "getFirstChild" o = WebKit2WebExtension.DOMNode.DOMNodeGetFirstChildMethodInfo
    ResolveDOMHTMLButtonElementMethod "getFirstElementChild" o = WebKit2WebExtension.DOMElement.DOMElementGetFirstElementChildMethodInfo
    ResolveDOMHTMLButtonElementMethod "getForm" o = DOMHTMLButtonElementGetFormMethodInfo
    ResolveDOMHTMLButtonElementMethod "getHidden" o = WebKit2WebExtension.DOMHTMLElement.DOMHTMLElementGetHiddenMethodInfo
    ResolveDOMHTMLButtonElementMethod "getId" o = WebKit2WebExtension.DOMElement.DOMElementGetIdMethodInfo
    ResolveDOMHTMLButtonElementMethod "getInnerHtml" o = WebKit2WebExtension.DOMHTMLElement.DOMHTMLElementGetInnerHtmlMethodInfo
    ResolveDOMHTMLButtonElementMethod "getInnerText" o = WebKit2WebExtension.DOMHTMLElement.DOMHTMLElementGetInnerTextMethodInfo
    ResolveDOMHTMLButtonElementMethod "getIsContentEditable" o = WebKit2WebExtension.DOMHTMLElement.DOMHTMLElementGetIsContentEditableMethodInfo
    ResolveDOMHTMLButtonElementMethod "getLang" o = WebKit2WebExtension.DOMHTMLElement.DOMHTMLElementGetLangMethodInfo
    ResolveDOMHTMLButtonElementMethod "getLastChild" o = WebKit2WebExtension.DOMNode.DOMNodeGetLastChildMethodInfo
    ResolveDOMHTMLButtonElementMethod "getLastElementChild" o = WebKit2WebExtension.DOMElement.DOMElementGetLastElementChildMethodInfo
    ResolveDOMHTMLButtonElementMethod "getLocalName" o = WebKit2WebExtension.DOMElement.DOMElementGetLocalNameMethodInfo
    ResolveDOMHTMLButtonElementMethod "getName" o = DOMHTMLButtonElementGetNameMethodInfo
    ResolveDOMHTMLButtonElementMethod "getNamespaceUri" o = WebKit2WebExtension.DOMElement.DOMElementGetNamespaceUriMethodInfo
    ResolveDOMHTMLButtonElementMethod "getNextElementSibling" o = WebKit2WebExtension.DOMElement.DOMElementGetNextElementSiblingMethodInfo
    ResolveDOMHTMLButtonElementMethod "getNextSibling" o = WebKit2WebExtension.DOMNode.DOMNodeGetNextSiblingMethodInfo
    ResolveDOMHTMLButtonElementMethod "getNodeName" o = WebKit2WebExtension.DOMNode.DOMNodeGetNodeNameMethodInfo
    ResolveDOMHTMLButtonElementMethod "getNodeType" o = WebKit2WebExtension.DOMNode.DOMNodeGetNodeTypeMethodInfo
    ResolveDOMHTMLButtonElementMethod "getNodeValue" o = WebKit2WebExtension.DOMNode.DOMNodeGetNodeValueMethodInfo
    ResolveDOMHTMLButtonElementMethod "getOffsetHeight" o = WebKit2WebExtension.DOMElement.DOMElementGetOffsetHeightMethodInfo
    ResolveDOMHTMLButtonElementMethod "getOffsetLeft" o = WebKit2WebExtension.DOMElement.DOMElementGetOffsetLeftMethodInfo
    ResolveDOMHTMLButtonElementMethod "getOffsetParent" o = WebKit2WebExtension.DOMElement.DOMElementGetOffsetParentMethodInfo
    ResolveDOMHTMLButtonElementMethod "getOffsetTop" o = WebKit2WebExtension.DOMElement.DOMElementGetOffsetTopMethodInfo
    ResolveDOMHTMLButtonElementMethod "getOffsetWidth" o = WebKit2WebExtension.DOMElement.DOMElementGetOffsetWidthMethodInfo
    ResolveDOMHTMLButtonElementMethod "getOuterHtml" o = WebKit2WebExtension.DOMHTMLElement.DOMHTMLElementGetOuterHtmlMethodInfo
    ResolveDOMHTMLButtonElementMethod "getOuterText" o = WebKit2WebExtension.DOMHTMLElement.DOMHTMLElementGetOuterTextMethodInfo
    ResolveDOMHTMLButtonElementMethod "getOwnerDocument" o = WebKit2WebExtension.DOMNode.DOMNodeGetOwnerDocumentMethodInfo
    ResolveDOMHTMLButtonElementMethod "getParentElement" o = WebKit2WebExtension.DOMNode.DOMNodeGetParentElementMethodInfo
    ResolveDOMHTMLButtonElementMethod "getParentNode" o = WebKit2WebExtension.DOMNode.DOMNodeGetParentNodeMethodInfo
    ResolveDOMHTMLButtonElementMethod "getPrefix" o = WebKit2WebExtension.DOMElement.DOMElementGetPrefixMethodInfo
    ResolveDOMHTMLButtonElementMethod "getPreviousElementSibling" o = WebKit2WebExtension.DOMElement.DOMElementGetPreviousElementSiblingMethodInfo
    ResolveDOMHTMLButtonElementMethod "getPreviousSibling" o = WebKit2WebExtension.DOMNode.DOMNodeGetPreviousSiblingMethodInfo
    ResolveDOMHTMLButtonElementMethod "getProperty" o = GObject.Object.ObjectGetPropertyMethodInfo
    ResolveDOMHTMLButtonElementMethod "getQdata" o = GObject.Object.ObjectGetQdataMethodInfo
    ResolveDOMHTMLButtonElementMethod "getScrollHeight" o = WebKit2WebExtension.DOMElement.DOMElementGetScrollHeightMethodInfo
    ResolveDOMHTMLButtonElementMethod "getScrollLeft" o = WebKit2WebExtension.DOMElement.DOMElementGetScrollLeftMethodInfo
    ResolveDOMHTMLButtonElementMethod "getScrollTop" o = WebKit2WebExtension.DOMElement.DOMElementGetScrollTopMethodInfo
    ResolveDOMHTMLButtonElementMethod "getScrollWidth" o = WebKit2WebExtension.DOMElement.DOMElementGetScrollWidthMethodInfo
    ResolveDOMHTMLButtonElementMethod "getSpellcheck" o = WebKit2WebExtension.DOMHTMLElement.DOMHTMLElementGetSpellcheckMethodInfo
    ResolveDOMHTMLButtonElementMethod "getStyle" o = WebKit2WebExtension.DOMElement.DOMElementGetStyleMethodInfo
    ResolveDOMHTMLButtonElementMethod "getTabIndex" o = WebKit2WebExtension.DOMHTMLElement.DOMHTMLElementGetTabIndexMethodInfo
    ResolveDOMHTMLButtonElementMethod "getTagName" o = WebKit2WebExtension.DOMElement.DOMElementGetTagNameMethodInfo
    ResolveDOMHTMLButtonElementMethod "getTextContent" o = WebKit2WebExtension.DOMNode.DOMNodeGetTextContentMethodInfo
    ResolveDOMHTMLButtonElementMethod "getTitle" o = WebKit2WebExtension.DOMHTMLElement.DOMHTMLElementGetTitleMethodInfo
    ResolveDOMHTMLButtonElementMethod "getTranslate" o = WebKit2WebExtension.DOMHTMLElement.DOMHTMLElementGetTranslateMethodInfo
    ResolveDOMHTMLButtonElementMethod "getValue" o = DOMHTMLButtonElementGetValueMethodInfo
    ResolveDOMHTMLButtonElementMethod "getWebkitRegionOverset" o = WebKit2WebExtension.DOMElement.DOMElementGetWebkitRegionOversetMethodInfo
    ResolveDOMHTMLButtonElementMethod "getWebkitdropzone" o = WebKit2WebExtension.DOMHTMLElement.DOMHTMLElementGetWebkitdropzoneMethodInfo
    ResolveDOMHTMLButtonElementMethod "getWillValidate" o = DOMHTMLButtonElementGetWillValidateMethodInfo
    ResolveDOMHTMLButtonElementMethod "setAccessKey" o = WebKit2WebExtension.DOMHTMLElement.DOMHTMLElementSetAccessKeyMethodInfo
    ResolveDOMHTMLButtonElementMethod "setAttribute" o = WebKit2WebExtension.DOMElement.DOMElementSetAttributeMethodInfo
    ResolveDOMHTMLButtonElementMethod "setAttributeNode" o = WebKit2WebExtension.DOMElement.DOMElementSetAttributeNodeMethodInfo
    ResolveDOMHTMLButtonElementMethod "setAttributeNodeNs" o = WebKit2WebExtension.DOMElement.DOMElementSetAttributeNodeNsMethodInfo
    ResolveDOMHTMLButtonElementMethod "setAttributeNs" o = WebKit2WebExtension.DOMElement.DOMElementSetAttributeNsMethodInfo
    ResolveDOMHTMLButtonElementMethod "setAutofocus" o = DOMHTMLButtonElementSetAutofocusMethodInfo
    ResolveDOMHTMLButtonElementMethod "setButtonType" o = DOMHTMLButtonElementSetButtonTypeMethodInfo
    ResolveDOMHTMLButtonElementMethod "setClassName" o = WebKit2WebExtension.DOMElement.DOMElementSetClassNameMethodInfo
    ResolveDOMHTMLButtonElementMethod "setContentEditable" o = WebKit2WebExtension.DOMHTMLElement.DOMHTMLElementSetContentEditableMethodInfo
    ResolveDOMHTMLButtonElementMethod "setData" o = GObject.Object.ObjectSetDataMethodInfo
    ResolveDOMHTMLButtonElementMethod "setDataFull" o = GObject.Object.ObjectSetDataFullMethodInfo
    ResolveDOMHTMLButtonElementMethod "setDir" o = WebKit2WebExtension.DOMHTMLElement.DOMHTMLElementSetDirMethodInfo
    ResolveDOMHTMLButtonElementMethod "setDisabled" o = DOMHTMLButtonElementSetDisabledMethodInfo
    ResolveDOMHTMLButtonElementMethod "setDraggable" o = WebKit2WebExtension.DOMHTMLElement.DOMHTMLElementSetDraggableMethodInfo
    ResolveDOMHTMLButtonElementMethod "setHidden" o = WebKit2WebExtension.DOMHTMLElement.DOMHTMLElementSetHiddenMethodInfo
    ResolveDOMHTMLButtonElementMethod "setId" o = WebKit2WebExtension.DOMElement.DOMElementSetIdMethodInfo
    ResolveDOMHTMLButtonElementMethod "setInnerHtml" o = WebKit2WebExtension.DOMHTMLElement.DOMHTMLElementSetInnerHtmlMethodInfo
    ResolveDOMHTMLButtonElementMethod "setInnerText" o = WebKit2WebExtension.DOMHTMLElement.DOMHTMLElementSetInnerTextMethodInfo
    ResolveDOMHTMLButtonElementMethod "setLang" o = WebKit2WebExtension.DOMHTMLElement.DOMHTMLElementSetLangMethodInfo
    ResolveDOMHTMLButtonElementMethod "setName" o = DOMHTMLButtonElementSetNameMethodInfo
    ResolveDOMHTMLButtonElementMethod "setNodeValue" o = WebKit2WebExtension.DOMNode.DOMNodeSetNodeValueMethodInfo
    ResolveDOMHTMLButtonElementMethod "setOuterHtml" o = WebKit2WebExtension.DOMHTMLElement.DOMHTMLElementSetOuterHtmlMethodInfo
    ResolveDOMHTMLButtonElementMethod "setOuterText" o = WebKit2WebExtension.DOMHTMLElement.DOMHTMLElementSetOuterTextMethodInfo
    ResolveDOMHTMLButtonElementMethod "setPrefix" o = WebKit2WebExtension.DOMNode.DOMNodeSetPrefixMethodInfo
    ResolveDOMHTMLButtonElementMethod "setProperty" o = GObject.Object.ObjectSetPropertyMethodInfo
    ResolveDOMHTMLButtonElementMethod "setScrollLeft" o = WebKit2WebExtension.DOMElement.DOMElementSetScrollLeftMethodInfo
    ResolveDOMHTMLButtonElementMethod "setScrollTop" o = WebKit2WebExtension.DOMElement.DOMElementSetScrollTopMethodInfo
    ResolveDOMHTMLButtonElementMethod "setSpellcheck" o = WebKit2WebExtension.DOMHTMLElement.DOMHTMLElementSetSpellcheckMethodInfo
    ResolveDOMHTMLButtonElementMethod "setTabIndex" o = WebKit2WebExtension.DOMHTMLElement.DOMHTMLElementSetTabIndexMethodInfo
    ResolveDOMHTMLButtonElementMethod "setTextContent" o = WebKit2WebExtension.DOMNode.DOMNodeSetTextContentMethodInfo
    ResolveDOMHTMLButtonElementMethod "setTitle" o = WebKit2WebExtension.DOMHTMLElement.DOMHTMLElementSetTitleMethodInfo
    ResolveDOMHTMLButtonElementMethod "setTranslate" o = WebKit2WebExtension.DOMHTMLElement.DOMHTMLElementSetTranslateMethodInfo
    ResolveDOMHTMLButtonElementMethod "setValue" o = DOMHTMLButtonElementSetValueMethodInfo
    ResolveDOMHTMLButtonElementMethod "setWebkitdropzone" o = WebKit2WebExtension.DOMHTMLElement.DOMHTMLElementSetWebkitdropzoneMethodInfo
    ResolveDOMHTMLButtonElementMethod l o = O.MethodResolutionFailed l o

instance (info ~ ResolveDOMHTMLButtonElementMethod t DOMHTMLButtonElement, O.MethodInfo info DOMHTMLButtonElement p) => OL.IsLabel t (DOMHTMLButtonElement -> p) where
#if MIN_VERSION_base(4,10,0)
    fromLabel = O.overloadedMethod @info
#else
    fromLabel _ = O.overloadedMethod @info
#endif

#endif

-- VVV Prop "autofocus"
   -- Type: TBasicType TBoolean
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Just False,Just False)

-- | Get the value of the “@autofocus@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.get' dOMHTMLButtonElement #autofocus
-- @
getDOMHTMLButtonElementAutofocus :: (MonadIO m, IsDOMHTMLButtonElement o) => o -> m Bool
getDOMHTMLButtonElementAutofocus :: o -> m Bool
getDOMHTMLButtonElementAutofocus o
obj = IO Bool -> m Bool
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Bool -> m Bool) -> IO Bool -> m Bool
forall a b. (a -> b) -> a -> b
$ o -> String -> IO Bool
forall a. GObject a => a -> String -> IO Bool
B.Properties.getObjectPropertyBool o
obj String
"autofocus"

-- | Set the value of the “@autofocus@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.set' dOMHTMLButtonElement [ #autofocus 'Data.GI.Base.Attributes.:=' value ]
-- @
setDOMHTMLButtonElementAutofocus :: (MonadIO m, IsDOMHTMLButtonElement o) => o -> Bool -> m ()
setDOMHTMLButtonElementAutofocus :: o -> Bool -> m ()
setDOMHTMLButtonElementAutofocus o
obj Bool
val = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ o -> String -> Bool -> IO ()
forall a. GObject a => a -> String -> Bool -> IO ()
B.Properties.setObjectPropertyBool o
obj String
"autofocus" Bool
val

-- | Construct a `GValueConstruct` with valid value for the “@autofocus@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
constructDOMHTMLButtonElementAutofocus :: (IsDOMHTMLButtonElement o, MIO.MonadIO m) => Bool -> m (GValueConstruct o)
constructDOMHTMLButtonElementAutofocus :: Bool -> m (GValueConstruct o)
constructDOMHTMLButtonElementAutofocus Bool
val = IO (GValueConstruct o) -> m (GValueConstruct o)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> m (GValueConstruct o))
-> IO (GValueConstruct o) -> m (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ String -> Bool -> IO (GValueConstruct o)
forall o. String -> Bool -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyBool String
"autofocus" Bool
val

#if defined(ENABLE_OVERLOADING)
data DOMHTMLButtonElementAutofocusPropertyInfo
instance AttrInfo DOMHTMLButtonElementAutofocusPropertyInfo where
    type AttrAllowedOps DOMHTMLButtonElementAutofocusPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrBaseTypeConstraint DOMHTMLButtonElementAutofocusPropertyInfo = IsDOMHTMLButtonElement
    type AttrSetTypeConstraint DOMHTMLButtonElementAutofocusPropertyInfo = (~) Bool
    type AttrTransferTypeConstraint DOMHTMLButtonElementAutofocusPropertyInfo = (~) Bool
    type AttrTransferType DOMHTMLButtonElementAutofocusPropertyInfo = Bool
    type AttrGetType DOMHTMLButtonElementAutofocusPropertyInfo = Bool
    type AttrLabel DOMHTMLButtonElementAutofocusPropertyInfo = "autofocus"
    type AttrOrigin DOMHTMLButtonElementAutofocusPropertyInfo = DOMHTMLButtonElement
    attrGet = getDOMHTMLButtonElementAutofocus
    attrSet = setDOMHTMLButtonElementAutofocus
    attrTransfer _ v = do
        return v
    attrConstruct = constructDOMHTMLButtonElementAutofocus
    attrClear = undefined
#endif

-- VVV Prop "disabled"
   -- Type: TBasicType TBoolean
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Just False,Just False)

-- | Get the value of the “@disabled@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.get' dOMHTMLButtonElement #disabled
-- @
getDOMHTMLButtonElementDisabled :: (MonadIO m, IsDOMHTMLButtonElement o) => o -> m Bool
getDOMHTMLButtonElementDisabled :: o -> m Bool
getDOMHTMLButtonElementDisabled o
obj = IO Bool -> m Bool
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Bool -> m Bool) -> IO Bool -> m Bool
forall a b. (a -> b) -> a -> b
$ o -> String -> IO Bool
forall a. GObject a => a -> String -> IO Bool
B.Properties.getObjectPropertyBool o
obj String
"disabled"

-- | Set the value of the “@disabled@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.set' dOMHTMLButtonElement [ #disabled 'Data.GI.Base.Attributes.:=' value ]
-- @
setDOMHTMLButtonElementDisabled :: (MonadIO m, IsDOMHTMLButtonElement o) => o -> Bool -> m ()
setDOMHTMLButtonElementDisabled :: o -> Bool -> m ()
setDOMHTMLButtonElementDisabled o
obj Bool
val = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ o -> String -> Bool -> IO ()
forall a. GObject a => a -> String -> Bool -> IO ()
B.Properties.setObjectPropertyBool o
obj String
"disabled" Bool
val

-- | Construct a `GValueConstruct` with valid value for the “@disabled@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
constructDOMHTMLButtonElementDisabled :: (IsDOMHTMLButtonElement o, MIO.MonadIO m) => Bool -> m (GValueConstruct o)
constructDOMHTMLButtonElementDisabled :: Bool -> m (GValueConstruct o)
constructDOMHTMLButtonElementDisabled Bool
val = IO (GValueConstruct o) -> m (GValueConstruct o)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> m (GValueConstruct o))
-> IO (GValueConstruct o) -> m (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ String -> Bool -> IO (GValueConstruct o)
forall o. String -> Bool -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyBool String
"disabled" Bool
val

#if defined(ENABLE_OVERLOADING)
data DOMHTMLButtonElementDisabledPropertyInfo
instance AttrInfo DOMHTMLButtonElementDisabledPropertyInfo where
    type AttrAllowedOps DOMHTMLButtonElementDisabledPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrBaseTypeConstraint DOMHTMLButtonElementDisabledPropertyInfo = IsDOMHTMLButtonElement
    type AttrSetTypeConstraint DOMHTMLButtonElementDisabledPropertyInfo = (~) Bool
    type AttrTransferTypeConstraint DOMHTMLButtonElementDisabledPropertyInfo = (~) Bool
    type AttrTransferType DOMHTMLButtonElementDisabledPropertyInfo = Bool
    type AttrGetType DOMHTMLButtonElementDisabledPropertyInfo = Bool
    type AttrLabel DOMHTMLButtonElementDisabledPropertyInfo = "disabled"
    type AttrOrigin DOMHTMLButtonElementDisabledPropertyInfo = DOMHTMLButtonElement
    attrGet = getDOMHTMLButtonElementDisabled
    attrSet = setDOMHTMLButtonElementDisabled
    attrTransfer _ v = do
        return v
    attrConstruct = constructDOMHTMLButtonElementDisabled
    attrClear = undefined
#endif

-- VVV Prop "form"
   -- Type: TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMHTMLFormElement"})
   -- Flags: [PropertyReadable]
   -- Nullable: (Just False,Nothing)

-- | Get the value of the “@form@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.get' dOMHTMLButtonElement #form
-- @
getDOMHTMLButtonElementForm :: (MonadIO m, IsDOMHTMLButtonElement o) => o -> m WebKit2WebExtension.DOMHTMLFormElement.DOMHTMLFormElement
getDOMHTMLButtonElementForm :: o -> m DOMHTMLFormElement
getDOMHTMLButtonElementForm o
obj = IO DOMHTMLFormElement -> m DOMHTMLFormElement
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO DOMHTMLFormElement -> m DOMHTMLFormElement)
-> IO DOMHTMLFormElement -> m DOMHTMLFormElement
forall a b. (a -> b) -> a -> b
$ Text -> IO (Maybe DOMHTMLFormElement) -> IO DOMHTMLFormElement
forall a. HasCallStack => Text -> IO (Maybe a) -> IO a
checkUnexpectedNothing Text
"getDOMHTMLButtonElementForm" (IO (Maybe DOMHTMLFormElement) -> IO DOMHTMLFormElement)
-> IO (Maybe DOMHTMLFormElement) -> IO DOMHTMLFormElement
forall a b. (a -> b) -> a -> b
$ o
-> String
-> (ManagedPtr DOMHTMLFormElement -> DOMHTMLFormElement)
-> IO (Maybe DOMHTMLFormElement)
forall a b.
(GObject a, GObject b) =>
a -> String -> (ManagedPtr b -> b) -> IO (Maybe b)
B.Properties.getObjectPropertyObject o
obj String
"form" ManagedPtr DOMHTMLFormElement -> DOMHTMLFormElement
WebKit2WebExtension.DOMHTMLFormElement.DOMHTMLFormElement

#if defined(ENABLE_OVERLOADING)
data DOMHTMLButtonElementFormPropertyInfo
instance AttrInfo DOMHTMLButtonElementFormPropertyInfo where
    type AttrAllowedOps DOMHTMLButtonElementFormPropertyInfo = '[ 'AttrGet, 'AttrClear]
    type AttrBaseTypeConstraint DOMHTMLButtonElementFormPropertyInfo = IsDOMHTMLButtonElement
    type AttrSetTypeConstraint DOMHTMLButtonElementFormPropertyInfo = (~) ()
    type AttrTransferTypeConstraint DOMHTMLButtonElementFormPropertyInfo = (~) ()
    type AttrTransferType DOMHTMLButtonElementFormPropertyInfo = ()
    type AttrGetType DOMHTMLButtonElementFormPropertyInfo = WebKit2WebExtension.DOMHTMLFormElement.DOMHTMLFormElement
    type AttrLabel DOMHTMLButtonElementFormPropertyInfo = "form"
    type AttrOrigin DOMHTMLButtonElementFormPropertyInfo = DOMHTMLButtonElement
    attrGet = getDOMHTMLButtonElementForm
    attrSet = undefined
    attrTransfer _ = undefined
    attrConstruct = undefined
    attrClear = undefined
#endif

-- VVV Prop "name"
   -- Type: TBasicType TUTF8
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Just False)

-- | Get the value of the “@name@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.get' dOMHTMLButtonElement #name
-- @
getDOMHTMLButtonElementName :: (MonadIO m, IsDOMHTMLButtonElement o) => o -> m (Maybe T.Text)
getDOMHTMLButtonElementName :: o -> m (Maybe Text)
getDOMHTMLButtonElementName o
obj = IO (Maybe Text) -> m (Maybe Text)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO (Maybe Text) -> m (Maybe Text))
-> IO (Maybe Text) -> m (Maybe Text)
forall a b. (a -> b) -> a -> b
$ o -> String -> IO (Maybe Text)
forall a. GObject a => a -> String -> IO (Maybe Text)
B.Properties.getObjectPropertyString o
obj String
"name"

-- | Set the value of the “@name@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.set' dOMHTMLButtonElement [ #name 'Data.GI.Base.Attributes.:=' value ]
-- @
setDOMHTMLButtonElementName :: (MonadIO m, IsDOMHTMLButtonElement o) => o -> T.Text -> m ()
setDOMHTMLButtonElementName :: o -> Text -> m ()
setDOMHTMLButtonElementName o
obj Text
val = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ o -> String -> Maybe Text -> IO ()
forall a. GObject a => a -> String -> Maybe Text -> IO ()
B.Properties.setObjectPropertyString o
obj String
"name" (Text -> Maybe Text
forall a. a -> Maybe a
Just Text
val)

-- | Construct a `GValueConstruct` with valid value for the “@name@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
constructDOMHTMLButtonElementName :: (IsDOMHTMLButtonElement o, MIO.MonadIO m) => T.Text -> m (GValueConstruct o)
constructDOMHTMLButtonElementName :: Text -> m (GValueConstruct o)
constructDOMHTMLButtonElementName Text
val = IO (GValueConstruct o) -> m (GValueConstruct o)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> m (GValueConstruct o))
-> IO (GValueConstruct o) -> m (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ String -> Maybe Text -> IO (GValueConstruct o)
forall o. String -> Maybe Text -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyString String
"name" (Text -> Maybe Text
forall a. a -> Maybe a
P.Just Text
val)

#if defined(ENABLE_OVERLOADING)
data DOMHTMLButtonElementNamePropertyInfo
instance AttrInfo DOMHTMLButtonElementNamePropertyInfo where
    type AttrAllowedOps DOMHTMLButtonElementNamePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrBaseTypeConstraint DOMHTMLButtonElementNamePropertyInfo = IsDOMHTMLButtonElement
    type AttrSetTypeConstraint DOMHTMLButtonElementNamePropertyInfo = (~) T.Text
    type AttrTransferTypeConstraint DOMHTMLButtonElementNamePropertyInfo = (~) T.Text
    type AttrTransferType DOMHTMLButtonElementNamePropertyInfo = T.Text
    type AttrGetType DOMHTMLButtonElementNamePropertyInfo = (Maybe T.Text)
    type AttrLabel DOMHTMLButtonElementNamePropertyInfo = "name"
    type AttrOrigin DOMHTMLButtonElementNamePropertyInfo = DOMHTMLButtonElement
    attrGet = getDOMHTMLButtonElementName
    attrSet = setDOMHTMLButtonElementName
    attrTransfer _ v = do
        return v
    attrConstruct = constructDOMHTMLButtonElementName
    attrClear = undefined
#endif

-- VVV Prop "type"
   -- Type: TBasicType TUTF8
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

-- | Get the value of the “@type@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.get' dOMHTMLButtonElement #type
-- @
getDOMHTMLButtonElementType :: (MonadIO m, IsDOMHTMLButtonElement o) => o -> m (Maybe T.Text)
getDOMHTMLButtonElementType :: o -> m (Maybe Text)
getDOMHTMLButtonElementType o
obj = IO (Maybe Text) -> m (Maybe Text)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO (Maybe Text) -> m (Maybe Text))
-> IO (Maybe Text) -> m (Maybe Text)
forall a b. (a -> b) -> a -> b
$ o -> String -> IO (Maybe Text)
forall a. GObject a => a -> String -> IO (Maybe Text)
B.Properties.getObjectPropertyString o
obj String
"type"

-- | Set the value of the “@type@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.set' dOMHTMLButtonElement [ #type 'Data.GI.Base.Attributes.:=' value ]
-- @
setDOMHTMLButtonElementType :: (MonadIO m, IsDOMHTMLButtonElement o) => o -> T.Text -> m ()
setDOMHTMLButtonElementType :: o -> Text -> m ()
setDOMHTMLButtonElementType o
obj Text
val = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ o -> String -> Maybe Text -> IO ()
forall a. GObject a => a -> String -> Maybe Text -> IO ()
B.Properties.setObjectPropertyString o
obj String
"type" (Text -> Maybe Text
forall a. a -> Maybe a
Just Text
val)

-- | Construct a `GValueConstruct` with valid value for the “@type@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
constructDOMHTMLButtonElementType :: (IsDOMHTMLButtonElement o, MIO.MonadIO m) => T.Text -> m (GValueConstruct o)
constructDOMHTMLButtonElementType :: Text -> m (GValueConstruct o)
constructDOMHTMLButtonElementType Text
val = IO (GValueConstruct o) -> m (GValueConstruct o)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> m (GValueConstruct o))
-> IO (GValueConstruct o) -> m (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ String -> Maybe Text -> IO (GValueConstruct o)
forall o. String -> Maybe Text -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyString String
"type" (Text -> Maybe Text
forall a. a -> Maybe a
P.Just Text
val)

-- | Set the value of the “@type@” property to `Nothing`.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.clear' #type
-- @
clearDOMHTMLButtonElementType :: (MonadIO m, IsDOMHTMLButtonElement o) => o -> m ()
clearDOMHTMLButtonElementType :: o -> m ()
clearDOMHTMLButtonElementType o
obj = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ o -> String -> Maybe Text -> IO ()
forall a. GObject a => a -> String -> Maybe Text -> IO ()
B.Properties.setObjectPropertyString o
obj String
"type" (Maybe Text
forall a. Maybe a
Nothing :: Maybe T.Text)

#if defined(ENABLE_OVERLOADING)
data DOMHTMLButtonElementTypePropertyInfo
instance AttrInfo DOMHTMLButtonElementTypePropertyInfo where
    type AttrAllowedOps DOMHTMLButtonElementTypePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet, 'AttrClear]
    type AttrBaseTypeConstraint DOMHTMLButtonElementTypePropertyInfo = IsDOMHTMLButtonElement
    type AttrSetTypeConstraint DOMHTMLButtonElementTypePropertyInfo = (~) T.Text
    type AttrTransferTypeConstraint DOMHTMLButtonElementTypePropertyInfo = (~) T.Text
    type AttrTransferType DOMHTMLButtonElementTypePropertyInfo = T.Text
    type AttrGetType DOMHTMLButtonElementTypePropertyInfo = (Maybe T.Text)
    type AttrLabel DOMHTMLButtonElementTypePropertyInfo = "type"
    type AttrOrigin DOMHTMLButtonElementTypePropertyInfo = DOMHTMLButtonElement
    attrGet = getDOMHTMLButtonElementType
    attrSet = setDOMHTMLButtonElementType
    attrTransfer _ v = do
        return v
    attrConstruct = constructDOMHTMLButtonElementType
    attrClear = clearDOMHTMLButtonElementType
#endif

-- VVV Prop "value"
   -- Type: TBasicType TUTF8
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Just False)

-- | Get the value of the “@value@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.get' dOMHTMLButtonElement #value
-- @
getDOMHTMLButtonElementValue :: (MonadIO m, IsDOMHTMLButtonElement o) => o -> m (Maybe T.Text)
getDOMHTMLButtonElementValue :: o -> m (Maybe Text)
getDOMHTMLButtonElementValue o
obj = IO (Maybe Text) -> m (Maybe Text)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO (Maybe Text) -> m (Maybe Text))
-> IO (Maybe Text) -> m (Maybe Text)
forall a b. (a -> b) -> a -> b
$ o -> String -> IO (Maybe Text)
forall a. GObject a => a -> String -> IO (Maybe Text)
B.Properties.getObjectPropertyString o
obj String
"value"

-- | Set the value of the “@value@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.set' dOMHTMLButtonElement [ #value 'Data.GI.Base.Attributes.:=' value ]
-- @
setDOMHTMLButtonElementValue :: (MonadIO m, IsDOMHTMLButtonElement o) => o -> T.Text -> m ()
setDOMHTMLButtonElementValue :: o -> Text -> m ()
setDOMHTMLButtonElementValue o
obj Text
val = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ o -> String -> Maybe Text -> IO ()
forall a. GObject a => a -> String -> Maybe Text -> IO ()
B.Properties.setObjectPropertyString o
obj String
"value" (Text -> Maybe Text
forall a. a -> Maybe a
Just Text
val)

-- | Construct a `GValueConstruct` with valid value for the “@value@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
constructDOMHTMLButtonElementValue :: (IsDOMHTMLButtonElement o, MIO.MonadIO m) => T.Text -> m (GValueConstruct o)
constructDOMHTMLButtonElementValue :: Text -> m (GValueConstruct o)
constructDOMHTMLButtonElementValue Text
val = IO (GValueConstruct o) -> m (GValueConstruct o)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> m (GValueConstruct o))
-> IO (GValueConstruct o) -> m (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ String -> Maybe Text -> IO (GValueConstruct o)
forall o. String -> Maybe Text -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyString String
"value" (Text -> Maybe Text
forall a. a -> Maybe a
P.Just Text
val)

#if defined(ENABLE_OVERLOADING)
data DOMHTMLButtonElementValuePropertyInfo
instance AttrInfo DOMHTMLButtonElementValuePropertyInfo where
    type AttrAllowedOps DOMHTMLButtonElementValuePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrBaseTypeConstraint DOMHTMLButtonElementValuePropertyInfo = IsDOMHTMLButtonElement
    type AttrSetTypeConstraint DOMHTMLButtonElementValuePropertyInfo = (~) T.Text
    type AttrTransferTypeConstraint DOMHTMLButtonElementValuePropertyInfo = (~) T.Text
    type AttrTransferType DOMHTMLButtonElementValuePropertyInfo = T.Text
    type AttrGetType DOMHTMLButtonElementValuePropertyInfo = (Maybe T.Text)
    type AttrLabel DOMHTMLButtonElementValuePropertyInfo = "value"
    type AttrOrigin DOMHTMLButtonElementValuePropertyInfo = DOMHTMLButtonElement
    attrGet = getDOMHTMLButtonElementValue
    attrSet = setDOMHTMLButtonElementValue
    attrTransfer _ v = do
        return v
    attrConstruct = constructDOMHTMLButtonElementValue
    attrClear = undefined
#endif

-- VVV Prop "will-validate"
   -- Type: TBasicType TBoolean
   -- Flags: [PropertyReadable]
   -- Nullable: (Just False,Nothing)

-- | Get the value of the “@will-validate@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.get' dOMHTMLButtonElement #willValidate
-- @
getDOMHTMLButtonElementWillValidate :: (MonadIO m, IsDOMHTMLButtonElement o) => o -> m Bool
getDOMHTMLButtonElementWillValidate :: o -> m Bool
getDOMHTMLButtonElementWillValidate o
obj = IO Bool -> m Bool
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Bool -> m Bool) -> IO Bool -> m Bool
forall a b. (a -> b) -> a -> b
$ o -> String -> IO Bool
forall a. GObject a => a -> String -> IO Bool
B.Properties.getObjectPropertyBool o
obj String
"will-validate"

#if defined(ENABLE_OVERLOADING)
data DOMHTMLButtonElementWillValidatePropertyInfo
instance AttrInfo DOMHTMLButtonElementWillValidatePropertyInfo where
    type AttrAllowedOps DOMHTMLButtonElementWillValidatePropertyInfo = '[ 'AttrGet]
    type AttrBaseTypeConstraint DOMHTMLButtonElementWillValidatePropertyInfo = IsDOMHTMLButtonElement
    type AttrSetTypeConstraint DOMHTMLButtonElementWillValidatePropertyInfo = (~) ()
    type AttrTransferTypeConstraint DOMHTMLButtonElementWillValidatePropertyInfo = (~) ()
    type AttrTransferType DOMHTMLButtonElementWillValidatePropertyInfo = ()
    type AttrGetType DOMHTMLButtonElementWillValidatePropertyInfo = Bool
    type AttrLabel DOMHTMLButtonElementWillValidatePropertyInfo = "will-validate"
    type AttrOrigin DOMHTMLButtonElementWillValidatePropertyInfo = DOMHTMLButtonElement
    attrGet = getDOMHTMLButtonElementWillValidate
    attrSet = undefined
    attrTransfer _ = undefined
    attrConstruct = undefined
    attrClear = undefined
#endif

#if defined(ENABLE_OVERLOADING)
instance O.HasAttributeList DOMHTMLButtonElement
type instance O.AttributeList DOMHTMLButtonElement = DOMHTMLButtonElementAttributeList
type DOMHTMLButtonElementAttributeList = ('[ '("accessKey", WebKit2WebExtension.DOMHTMLElement.DOMHTMLElementAccessKeyPropertyInfo), '("attributes", WebKit2WebExtension.DOMElement.DOMElementAttributesPropertyInfo), '("autofocus", DOMHTMLButtonElementAutofocusPropertyInfo), '("baseUri", WebKit2WebExtension.DOMNode.DOMNodeBaseUriPropertyInfo), '("childElementCount", WebKit2WebExtension.DOMElement.DOMElementChildElementCountPropertyInfo), '("childNodes", WebKit2WebExtension.DOMNode.DOMNodeChildNodesPropertyInfo), '("children", WebKit2WebExtension.DOMElement.DOMElementChildrenPropertyInfo), '("classList", WebKit2WebExtension.DOMElement.DOMElementClassListPropertyInfo), '("className", WebKit2WebExtension.DOMElement.DOMElementClassNamePropertyInfo), '("clientHeight", WebKit2WebExtension.DOMElement.DOMElementClientHeightPropertyInfo), '("clientLeft", WebKit2WebExtension.DOMElement.DOMElementClientLeftPropertyInfo), '("clientTop", WebKit2WebExtension.DOMElement.DOMElementClientTopPropertyInfo), '("clientWidth", WebKit2WebExtension.DOMElement.DOMElementClientWidthPropertyInfo), '("contentEditable", WebKit2WebExtension.DOMHTMLElement.DOMHTMLElementContentEditablePropertyInfo), '("coreObject", WebKit2WebExtension.DOMObject.DOMObjectCoreObjectPropertyInfo), '("dir", WebKit2WebExtension.DOMHTMLElement.DOMHTMLElementDirPropertyInfo), '("disabled", DOMHTMLButtonElementDisabledPropertyInfo), '("draggable", WebKit2WebExtension.DOMHTMLElement.DOMHTMLElementDraggablePropertyInfo), '("firstChild", WebKit2WebExtension.DOMNode.DOMNodeFirstChildPropertyInfo), '("firstElementChild", WebKit2WebExtension.DOMElement.DOMElementFirstElementChildPropertyInfo), '("form", DOMHTMLButtonElementFormPropertyInfo), '("hidden", WebKit2WebExtension.DOMHTMLElement.DOMHTMLElementHiddenPropertyInfo), '("id", WebKit2WebExtension.DOMElement.DOMElementIdPropertyInfo), '("innerHtml", WebKit2WebExtension.DOMElement.DOMElementInnerHtmlPropertyInfo), '("innerText", WebKit2WebExtension.DOMHTMLElement.DOMHTMLElementInnerTextPropertyInfo), '("isContentEditable", WebKit2WebExtension.DOMHTMLElement.DOMHTMLElementIsContentEditablePropertyInfo), '("lang", WebKit2WebExtension.DOMHTMLElement.DOMHTMLElementLangPropertyInfo), '("lastChild", WebKit2WebExtension.DOMNode.DOMNodeLastChildPropertyInfo), '("lastElementChild", WebKit2WebExtension.DOMElement.DOMElementLastElementChildPropertyInfo), '("localName", WebKit2WebExtension.DOMElement.DOMElementLocalNamePropertyInfo), '("name", DOMHTMLButtonElementNamePropertyInfo), '("namespaceUri", WebKit2WebExtension.DOMElement.DOMElementNamespaceUriPropertyInfo), '("nextElementSibling", WebKit2WebExtension.DOMElement.DOMElementNextElementSiblingPropertyInfo), '("nextSibling", WebKit2WebExtension.DOMNode.DOMNodeNextSiblingPropertyInfo), '("nodeName", WebKit2WebExtension.DOMNode.DOMNodeNodeNamePropertyInfo), '("nodeType", WebKit2WebExtension.DOMNode.DOMNodeNodeTypePropertyInfo), '("nodeValue", WebKit2WebExtension.DOMNode.DOMNodeNodeValuePropertyInfo), '("offsetHeight", WebKit2WebExtension.DOMElement.DOMElementOffsetHeightPropertyInfo), '("offsetLeft", WebKit2WebExtension.DOMElement.DOMElementOffsetLeftPropertyInfo), '("offsetParent", WebKit2WebExtension.DOMElement.DOMElementOffsetParentPropertyInfo), '("offsetTop", WebKit2WebExtension.DOMElement.DOMElementOffsetTopPropertyInfo), '("offsetWidth", WebKit2WebExtension.DOMElement.DOMElementOffsetWidthPropertyInfo), '("outerHtml", WebKit2WebExtension.DOMElement.DOMElementOuterHtmlPropertyInfo), '("outerText", WebKit2WebExtension.DOMHTMLElement.DOMHTMLElementOuterTextPropertyInfo), '("ownerDocument", WebKit2WebExtension.DOMNode.DOMNodeOwnerDocumentPropertyInfo), '("parentElement", WebKit2WebExtension.DOMNode.DOMNodeParentElementPropertyInfo), '("parentNode", WebKit2WebExtension.DOMNode.DOMNodeParentNodePropertyInfo), '("prefix", WebKit2WebExtension.DOMElement.DOMElementPrefixPropertyInfo), '("previousElementSibling", WebKit2WebExtension.DOMElement.DOMElementPreviousElementSiblingPropertyInfo), '("previousSibling", WebKit2WebExtension.DOMNode.DOMNodePreviousSiblingPropertyInfo), '("scrollHeight", WebKit2WebExtension.DOMElement.DOMElementScrollHeightPropertyInfo), '("scrollLeft", WebKit2WebExtension.DOMElement.DOMElementScrollLeftPropertyInfo), '("scrollTop", WebKit2WebExtension.DOMElement.DOMElementScrollTopPropertyInfo), '("scrollWidth", WebKit2WebExtension.DOMElement.DOMElementScrollWidthPropertyInfo), '("spellcheck", WebKit2WebExtension.DOMHTMLElement.DOMHTMLElementSpellcheckPropertyInfo), '("style", WebKit2WebExtension.DOMElement.DOMElementStylePropertyInfo), '("tabIndex", WebKit2WebExtension.DOMHTMLElement.DOMHTMLElementTabIndexPropertyInfo), '("tagName", WebKit2WebExtension.DOMElement.DOMElementTagNamePropertyInfo), '("textContent", WebKit2WebExtension.DOMNode.DOMNodeTextContentPropertyInfo), '("title", WebKit2WebExtension.DOMHTMLElement.DOMHTMLElementTitlePropertyInfo), '("translate", WebKit2WebExtension.DOMHTMLElement.DOMHTMLElementTranslatePropertyInfo), '("type", DOMHTMLButtonElementTypePropertyInfo), '("value", DOMHTMLButtonElementValuePropertyInfo), '("webkitRegionOverset", WebKit2WebExtension.DOMElement.DOMElementWebkitRegionOversetPropertyInfo), '("webkitdropzone", WebKit2WebExtension.DOMHTMLElement.DOMHTMLElementWebkitdropzonePropertyInfo), '("willValidate", DOMHTMLButtonElementWillValidatePropertyInfo)] :: [(Symbol, *)])
#endif

#if defined(ENABLE_OVERLOADING)
dOMHTMLButtonElementAutofocus :: AttrLabelProxy "autofocus"
dOMHTMLButtonElementAutofocus = AttrLabelProxy

dOMHTMLButtonElementDisabled :: AttrLabelProxy "disabled"
dOMHTMLButtonElementDisabled = AttrLabelProxy

dOMHTMLButtonElementForm :: AttrLabelProxy "form"
dOMHTMLButtonElementForm = AttrLabelProxy

dOMHTMLButtonElementName :: AttrLabelProxy "name"
dOMHTMLButtonElementName = AttrLabelProxy

dOMHTMLButtonElementType :: AttrLabelProxy "type"
dOMHTMLButtonElementType = AttrLabelProxy

dOMHTMLButtonElementValue :: AttrLabelProxy "value"
dOMHTMLButtonElementValue = AttrLabelProxy

dOMHTMLButtonElementWillValidate :: AttrLabelProxy "willValidate"
dOMHTMLButtonElementWillValidate = AttrLabelProxy

#endif

#if defined(ENABLE_OVERLOADING)
type instance O.SignalList DOMHTMLButtonElement = DOMHTMLButtonElementSignalList
type DOMHTMLButtonElementSignalList = ('[ '("notify", GObject.Object.ObjectNotifySignalInfo)] :: [(Symbol, *)])

#endif

-- method DOMHTMLButtonElement::get_autofocus
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "self"
--           , argType =
--               TInterface
--                 Name
--                   { namespace = "WebKit2WebExtension"
--                   , name = "DOMHTMLButtonElement"
--                   }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "A #WebKitDOMHTMLButtonElement"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Just (TBasicType TBoolean)
-- throws : False
-- Skip return : False

foreign import ccall "webkit_dom_html_button_element_get_autofocus" webkit_dom_html_button_element_get_autofocus :: 
    Ptr DOMHTMLButtonElement ->             -- self : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMHTMLButtonElement"})
    IO CInt

{-# DEPRECATED dOMHTMLButtonElementGetAutofocus ["(Since version 2.22)","Use JavaScriptCore API instead"] #-}
-- | /No description available in the introspection data./
dOMHTMLButtonElementGetAutofocus ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMHTMLButtonElement a) =>
    a
    -- ^ /@self@/: A t'GI.WebKit2WebExtension.Objects.DOMHTMLButtonElement.DOMHTMLButtonElement'
    -> m Bool
    -- ^ __Returns:__ A t'P.Bool'
dOMHTMLButtonElementGetAutofocus :: a -> m Bool
dOMHTMLButtonElementGetAutofocus a
self = IO Bool -> m Bool
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Bool -> m Bool) -> IO Bool -> m Bool
forall a b. (a -> b) -> a -> b
$ do
    Ptr DOMHTMLButtonElement
self' <- a -> IO (Ptr DOMHTMLButtonElement)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
    CInt
result <- Ptr DOMHTMLButtonElement -> IO CInt
webkit_dom_html_button_element_get_autofocus Ptr DOMHTMLButtonElement
self'
    let result' :: Bool
result' = (CInt -> CInt -> Bool
forall a. Eq a => a -> a -> Bool
/= CInt
0) CInt
result
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
self
    Bool -> IO Bool
forall (m :: * -> *) a. Monad m => a -> m a
return Bool
result'

#if defined(ENABLE_OVERLOADING)
data DOMHTMLButtonElementGetAutofocusMethodInfo
instance (signature ~ (m Bool), MonadIO m, IsDOMHTMLButtonElement a) => O.MethodInfo DOMHTMLButtonElementGetAutofocusMethodInfo a signature where
    overloadedMethod = dOMHTMLButtonElementGetAutofocus

#endif

-- method DOMHTMLButtonElement::get_button_type
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "self"
--           , argType =
--               TInterface
--                 Name
--                   { namespace = "WebKit2WebExtension"
--                   , name = "DOMHTMLButtonElement"
--                   }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "A #WebKitDOMHTMLButtonElement"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Just (TBasicType TUTF8)
-- throws : False
-- Skip return : False

foreign import ccall "webkit_dom_html_button_element_get_button_type" webkit_dom_html_button_element_get_button_type :: 
    Ptr DOMHTMLButtonElement ->             -- self : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMHTMLButtonElement"})
    IO CString

{-# DEPRECATED dOMHTMLButtonElementGetButtonType ["(Since version 2.22)","Use JavaScriptCore API instead"] #-}
-- | /No description available in the introspection data./
dOMHTMLButtonElementGetButtonType ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMHTMLButtonElement a) =>
    a
    -- ^ /@self@/: A t'GI.WebKit2WebExtension.Objects.DOMHTMLButtonElement.DOMHTMLButtonElement'
    -> m T.Text
    -- ^ __Returns:__ A @/gchar/@
dOMHTMLButtonElementGetButtonType :: a -> m Text
dOMHTMLButtonElementGetButtonType a
self = IO Text -> m Text
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Text -> m Text) -> IO Text -> m Text
forall a b. (a -> b) -> a -> b
$ do
    Ptr DOMHTMLButtonElement
self' <- a -> IO (Ptr DOMHTMLButtonElement)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
    CString
result <- Ptr DOMHTMLButtonElement -> IO CString
webkit_dom_html_button_element_get_button_type Ptr DOMHTMLButtonElement
self'
    Text -> CString -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"dOMHTMLButtonElementGetButtonType" CString
result
    Text
result' <- HasCallStack => CString -> IO Text
CString -> IO Text
cstringToText CString
result
    CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
result
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
self
    Text -> IO Text
forall (m :: * -> *) a. Monad m => a -> m a
return Text
result'

#if defined(ENABLE_OVERLOADING)
data DOMHTMLButtonElementGetButtonTypeMethodInfo
instance (signature ~ (m T.Text), MonadIO m, IsDOMHTMLButtonElement a) => O.MethodInfo DOMHTMLButtonElementGetButtonTypeMethodInfo a signature where
    overloadedMethod = dOMHTMLButtonElementGetButtonType

#endif

-- method DOMHTMLButtonElement::get_disabled
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "self"
--           , argType =
--               TInterface
--                 Name
--                   { namespace = "WebKit2WebExtension"
--                   , name = "DOMHTMLButtonElement"
--                   }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "A #WebKitDOMHTMLButtonElement"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Just (TBasicType TBoolean)
-- throws : False
-- Skip return : False

foreign import ccall "webkit_dom_html_button_element_get_disabled" webkit_dom_html_button_element_get_disabled :: 
    Ptr DOMHTMLButtonElement ->             -- self : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMHTMLButtonElement"})
    IO CInt

{-# DEPRECATED dOMHTMLButtonElementGetDisabled ["(Since version 2.22)","Use JavaScriptCore API instead"] #-}
-- | /No description available in the introspection data./
dOMHTMLButtonElementGetDisabled ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMHTMLButtonElement a) =>
    a
    -- ^ /@self@/: A t'GI.WebKit2WebExtension.Objects.DOMHTMLButtonElement.DOMHTMLButtonElement'
    -> m Bool
    -- ^ __Returns:__ A t'P.Bool'
dOMHTMLButtonElementGetDisabled :: a -> m Bool
dOMHTMLButtonElementGetDisabled a
self = IO Bool -> m Bool
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Bool -> m Bool) -> IO Bool -> m Bool
forall a b. (a -> b) -> a -> b
$ do
    Ptr DOMHTMLButtonElement
self' <- a -> IO (Ptr DOMHTMLButtonElement)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
    CInt
result <- Ptr DOMHTMLButtonElement -> IO CInt
webkit_dom_html_button_element_get_disabled Ptr DOMHTMLButtonElement
self'
    let result' :: Bool
result' = (CInt -> CInt -> Bool
forall a. Eq a => a -> a -> Bool
/= CInt
0) CInt
result
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
self
    Bool -> IO Bool
forall (m :: * -> *) a. Monad m => a -> m a
return Bool
result'

#if defined(ENABLE_OVERLOADING)
data DOMHTMLButtonElementGetDisabledMethodInfo
instance (signature ~ (m Bool), MonadIO m, IsDOMHTMLButtonElement a) => O.MethodInfo DOMHTMLButtonElementGetDisabledMethodInfo a signature where
    overloadedMethod = dOMHTMLButtonElementGetDisabled

#endif

-- method DOMHTMLButtonElement::get_form
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "self"
--           , argType =
--               TInterface
--                 Name
--                   { namespace = "WebKit2WebExtension"
--                   , name = "DOMHTMLButtonElement"
--                   }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "A #WebKitDOMHTMLButtonElement"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Just
--               (TInterface
--                  Name
--                    { namespace = "WebKit2WebExtension"
--                    , name = "DOMHTMLFormElement"
--                    })
-- throws : False
-- Skip return : False

foreign import ccall "webkit_dom_html_button_element_get_form" webkit_dom_html_button_element_get_form :: 
    Ptr DOMHTMLButtonElement ->             -- self : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMHTMLButtonElement"})
    IO (Ptr WebKit2WebExtension.DOMHTMLFormElement.DOMHTMLFormElement)

{-# DEPRECATED dOMHTMLButtonElementGetForm ["(Since version 2.22)","Use JavaScriptCore API instead"] #-}
-- | /No description available in the introspection data./
dOMHTMLButtonElementGetForm ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMHTMLButtonElement a) =>
    a
    -- ^ /@self@/: A t'GI.WebKit2WebExtension.Objects.DOMHTMLButtonElement.DOMHTMLButtonElement'
    -> m WebKit2WebExtension.DOMHTMLFormElement.DOMHTMLFormElement
    -- ^ __Returns:__ A t'GI.WebKit2WebExtension.Objects.DOMHTMLFormElement.DOMHTMLFormElement'
dOMHTMLButtonElementGetForm :: a -> m DOMHTMLFormElement
dOMHTMLButtonElementGetForm a
self = IO DOMHTMLFormElement -> m DOMHTMLFormElement
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO DOMHTMLFormElement -> m DOMHTMLFormElement)
-> IO DOMHTMLFormElement -> m DOMHTMLFormElement
forall a b. (a -> b) -> a -> b
$ do
    Ptr DOMHTMLButtonElement
self' <- a -> IO (Ptr DOMHTMLButtonElement)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
    Ptr DOMHTMLFormElement
result <- Ptr DOMHTMLButtonElement -> IO (Ptr DOMHTMLFormElement)
webkit_dom_html_button_element_get_form Ptr DOMHTMLButtonElement
self'
    Text -> Ptr DOMHTMLFormElement -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"dOMHTMLButtonElementGetForm" Ptr DOMHTMLFormElement
result
    DOMHTMLFormElement
result' <- ((ManagedPtr DOMHTMLFormElement -> DOMHTMLFormElement)
-> Ptr DOMHTMLFormElement -> IO DOMHTMLFormElement
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
newObject ManagedPtr DOMHTMLFormElement -> DOMHTMLFormElement
WebKit2WebExtension.DOMHTMLFormElement.DOMHTMLFormElement) Ptr DOMHTMLFormElement
result
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
self
    DOMHTMLFormElement -> IO DOMHTMLFormElement
forall (m :: * -> *) a. Monad m => a -> m a
return DOMHTMLFormElement
result'

#if defined(ENABLE_OVERLOADING)
data DOMHTMLButtonElementGetFormMethodInfo
instance (signature ~ (m WebKit2WebExtension.DOMHTMLFormElement.DOMHTMLFormElement), MonadIO m, IsDOMHTMLButtonElement a) => O.MethodInfo DOMHTMLButtonElementGetFormMethodInfo a signature where
    overloadedMethod = dOMHTMLButtonElementGetForm

#endif

-- method DOMHTMLButtonElement::get_name
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "self"
--           , argType =
--               TInterface
--                 Name
--                   { namespace = "WebKit2WebExtension"
--                   , name = "DOMHTMLButtonElement"
--                   }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "A #WebKitDOMHTMLButtonElement"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Just (TBasicType TUTF8)
-- throws : False
-- Skip return : False

foreign import ccall "webkit_dom_html_button_element_get_name" webkit_dom_html_button_element_get_name :: 
    Ptr DOMHTMLButtonElement ->             -- self : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMHTMLButtonElement"})
    IO CString

{-# DEPRECATED dOMHTMLButtonElementGetName ["(Since version 2.22)","Use JavaScriptCore API instead"] #-}
-- | /No description available in the introspection data./
dOMHTMLButtonElementGetName ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMHTMLButtonElement a) =>
    a
    -- ^ /@self@/: A t'GI.WebKit2WebExtension.Objects.DOMHTMLButtonElement.DOMHTMLButtonElement'
    -> m T.Text
    -- ^ __Returns:__ A @/gchar/@
dOMHTMLButtonElementGetName :: a -> m Text
dOMHTMLButtonElementGetName a
self = IO Text -> m Text
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Text -> m Text) -> IO Text -> m Text
forall a b. (a -> b) -> a -> b
$ do
    Ptr DOMHTMLButtonElement
self' <- a -> IO (Ptr DOMHTMLButtonElement)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
    CString
result <- Ptr DOMHTMLButtonElement -> IO CString
webkit_dom_html_button_element_get_name Ptr DOMHTMLButtonElement
self'
    Text -> CString -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"dOMHTMLButtonElementGetName" CString
result
    Text
result' <- HasCallStack => CString -> IO Text
CString -> IO Text
cstringToText CString
result
    CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
result
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
self
    Text -> IO Text
forall (m :: * -> *) a. Monad m => a -> m a
return Text
result'

#if defined(ENABLE_OVERLOADING)
data DOMHTMLButtonElementGetNameMethodInfo
instance (signature ~ (m T.Text), MonadIO m, IsDOMHTMLButtonElement a) => O.MethodInfo DOMHTMLButtonElementGetNameMethodInfo a signature where
    overloadedMethod = dOMHTMLButtonElementGetName

#endif

-- method DOMHTMLButtonElement::get_value
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "self"
--           , argType =
--               TInterface
--                 Name
--                   { namespace = "WebKit2WebExtension"
--                   , name = "DOMHTMLButtonElement"
--                   }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "A #WebKitDOMHTMLButtonElement"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Just (TBasicType TUTF8)
-- throws : False
-- Skip return : False

foreign import ccall "webkit_dom_html_button_element_get_value" webkit_dom_html_button_element_get_value :: 
    Ptr DOMHTMLButtonElement ->             -- self : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMHTMLButtonElement"})
    IO CString

{-# DEPRECATED dOMHTMLButtonElementGetValue ["(Since version 2.22)","Use JavaScriptCore API instead"] #-}
-- | /No description available in the introspection data./
dOMHTMLButtonElementGetValue ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMHTMLButtonElement a) =>
    a
    -- ^ /@self@/: A t'GI.WebKit2WebExtension.Objects.DOMHTMLButtonElement.DOMHTMLButtonElement'
    -> m T.Text
    -- ^ __Returns:__ A @/gchar/@
dOMHTMLButtonElementGetValue :: a -> m Text
dOMHTMLButtonElementGetValue a
self = IO Text -> m Text
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Text -> m Text) -> IO Text -> m Text
forall a b. (a -> b) -> a -> b
$ do
    Ptr DOMHTMLButtonElement
self' <- a -> IO (Ptr DOMHTMLButtonElement)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
    CString
result <- Ptr DOMHTMLButtonElement -> IO CString
webkit_dom_html_button_element_get_value Ptr DOMHTMLButtonElement
self'
    Text -> CString -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"dOMHTMLButtonElementGetValue" CString
result
    Text
result' <- HasCallStack => CString -> IO Text
CString -> IO Text
cstringToText CString
result
    CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
result
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
self
    Text -> IO Text
forall (m :: * -> *) a. Monad m => a -> m a
return Text
result'

#if defined(ENABLE_OVERLOADING)
data DOMHTMLButtonElementGetValueMethodInfo
instance (signature ~ (m T.Text), MonadIO m, IsDOMHTMLButtonElement a) => O.MethodInfo DOMHTMLButtonElementGetValueMethodInfo a signature where
    overloadedMethod = dOMHTMLButtonElementGetValue

#endif

-- method DOMHTMLButtonElement::get_will_validate
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "self"
--           , argType =
--               TInterface
--                 Name
--                   { namespace = "WebKit2WebExtension"
--                   , name = "DOMHTMLButtonElement"
--                   }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "A #WebKitDOMHTMLButtonElement"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Just (TBasicType TBoolean)
-- throws : False
-- Skip return : False

foreign import ccall "webkit_dom_html_button_element_get_will_validate" webkit_dom_html_button_element_get_will_validate :: 
    Ptr DOMHTMLButtonElement ->             -- self : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMHTMLButtonElement"})
    IO CInt

{-# DEPRECATED dOMHTMLButtonElementGetWillValidate ["(Since version 2.22)","Use JavaScriptCore API instead"] #-}
-- | /No description available in the introspection data./
dOMHTMLButtonElementGetWillValidate ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMHTMLButtonElement a) =>
    a
    -- ^ /@self@/: A t'GI.WebKit2WebExtension.Objects.DOMHTMLButtonElement.DOMHTMLButtonElement'
    -> m Bool
    -- ^ __Returns:__ A t'P.Bool'
dOMHTMLButtonElementGetWillValidate :: a -> m Bool
dOMHTMLButtonElementGetWillValidate a
self = IO Bool -> m Bool
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Bool -> m Bool) -> IO Bool -> m Bool
forall a b. (a -> b) -> a -> b
$ do
    Ptr DOMHTMLButtonElement
self' <- a -> IO (Ptr DOMHTMLButtonElement)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
    CInt
result <- Ptr DOMHTMLButtonElement -> IO CInt
webkit_dom_html_button_element_get_will_validate Ptr DOMHTMLButtonElement
self'
    let result' :: Bool
result' = (CInt -> CInt -> Bool
forall a. Eq a => a -> a -> Bool
/= CInt
0) CInt
result
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
self
    Bool -> IO Bool
forall (m :: * -> *) a. Monad m => a -> m a
return Bool
result'

#if defined(ENABLE_OVERLOADING)
data DOMHTMLButtonElementGetWillValidateMethodInfo
instance (signature ~ (m Bool), MonadIO m, IsDOMHTMLButtonElement a) => O.MethodInfo DOMHTMLButtonElementGetWillValidateMethodInfo a signature where
    overloadedMethod = dOMHTMLButtonElementGetWillValidate

#endif

-- method DOMHTMLButtonElement::set_autofocus
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "self"
--           , argType =
--               TInterface
--                 Name
--                   { namespace = "WebKit2WebExtension"
--                   , name = "DOMHTMLButtonElement"
--                   }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "A #WebKitDOMHTMLButtonElement"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       , Arg
--           { argCName = "value"
--           , argType = TBasicType TBoolean
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "A #gboolean" , sinceVersion = Nothing }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Nothing
-- throws : False
-- Skip return : False

foreign import ccall "webkit_dom_html_button_element_set_autofocus" webkit_dom_html_button_element_set_autofocus :: 
    Ptr DOMHTMLButtonElement ->             -- self : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMHTMLButtonElement"})
    CInt ->                                 -- value : TBasicType TBoolean
    IO ()

{-# DEPRECATED dOMHTMLButtonElementSetAutofocus ["(Since version 2.22)","Use JavaScriptCore API instead"] #-}
-- | /No description available in the introspection data./
dOMHTMLButtonElementSetAutofocus ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMHTMLButtonElement a) =>
    a
    -- ^ /@self@/: A t'GI.WebKit2WebExtension.Objects.DOMHTMLButtonElement.DOMHTMLButtonElement'
    -> Bool
    -- ^ /@value@/: A t'P.Bool'
    -> m ()
dOMHTMLButtonElementSetAutofocus :: a -> Bool -> m ()
dOMHTMLButtonElementSetAutofocus a
self Bool
value = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    Ptr DOMHTMLButtonElement
self' <- a -> IO (Ptr DOMHTMLButtonElement)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
    let value' :: CInt
value' = (Int -> CInt
forall a b. (Integral a, Num b) => a -> b
fromIntegral (Int -> CInt) -> (Bool -> Int) -> Bool -> CInt
forall b c a. (b -> c) -> (a -> b) -> a -> c
. Bool -> Int
forall a. Enum a => a -> Int
fromEnum) Bool
value
    Ptr DOMHTMLButtonElement -> CInt -> IO ()
webkit_dom_html_button_element_set_autofocus Ptr DOMHTMLButtonElement
self' CInt
value'
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
self
    () -> IO ()
forall (m :: * -> *) a. Monad m => a -> m a
return ()

#if defined(ENABLE_OVERLOADING)
data DOMHTMLButtonElementSetAutofocusMethodInfo
instance (signature ~ (Bool -> m ()), MonadIO m, IsDOMHTMLButtonElement a) => O.MethodInfo DOMHTMLButtonElementSetAutofocusMethodInfo a signature where
    overloadedMethod = dOMHTMLButtonElementSetAutofocus

#endif

-- method DOMHTMLButtonElement::set_button_type
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "self"
--           , argType =
--               TInterface
--                 Name
--                   { namespace = "WebKit2WebExtension"
--                   , name = "DOMHTMLButtonElement"
--                   }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "A #WebKitDOMHTMLButtonElement"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       , Arg
--           { argCName = "value"
--           , argType = TBasicType TUTF8
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "A #gchar" , sinceVersion = Nothing }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Nothing
-- throws : False
-- Skip return : False

foreign import ccall "webkit_dom_html_button_element_set_button_type" webkit_dom_html_button_element_set_button_type :: 
    Ptr DOMHTMLButtonElement ->             -- self : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMHTMLButtonElement"})
    CString ->                              -- value : TBasicType TUTF8
    IO ()

{-# DEPRECATED dOMHTMLButtonElementSetButtonType ["(Since version 2.22)","Use JavaScriptCore API instead"] #-}
-- | /No description available in the introspection data./
dOMHTMLButtonElementSetButtonType ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMHTMLButtonElement a) =>
    a
    -- ^ /@self@/: A t'GI.WebKit2WebExtension.Objects.DOMHTMLButtonElement.DOMHTMLButtonElement'
    -> T.Text
    -- ^ /@value@/: A @/gchar/@
    -> m ()
dOMHTMLButtonElementSetButtonType :: a -> Text -> m ()
dOMHTMLButtonElementSetButtonType a
self Text
value = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    Ptr DOMHTMLButtonElement
self' <- a -> IO (Ptr DOMHTMLButtonElement)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
    CString
value' <- Text -> IO CString
textToCString Text
value
    Ptr DOMHTMLButtonElement -> CString -> IO ()
webkit_dom_html_button_element_set_button_type Ptr DOMHTMLButtonElement
self' CString
value'
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
self
    CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
value'
    () -> IO ()
forall (m :: * -> *) a. Monad m => a -> m a
return ()

#if defined(ENABLE_OVERLOADING)
data DOMHTMLButtonElementSetButtonTypeMethodInfo
instance (signature ~ (T.Text -> m ()), MonadIO m, IsDOMHTMLButtonElement a) => O.MethodInfo DOMHTMLButtonElementSetButtonTypeMethodInfo a signature where
    overloadedMethod = dOMHTMLButtonElementSetButtonType

#endif

-- method DOMHTMLButtonElement::set_disabled
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "self"
--           , argType =
--               TInterface
--                 Name
--                   { namespace = "WebKit2WebExtension"
--                   , name = "DOMHTMLButtonElement"
--                   }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "A #WebKitDOMHTMLButtonElement"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       , Arg
--           { argCName = "value"
--           , argType = TBasicType TBoolean
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "A #gboolean" , sinceVersion = Nothing }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Nothing
-- throws : False
-- Skip return : False

foreign import ccall "webkit_dom_html_button_element_set_disabled" webkit_dom_html_button_element_set_disabled :: 
    Ptr DOMHTMLButtonElement ->             -- self : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMHTMLButtonElement"})
    CInt ->                                 -- value : TBasicType TBoolean
    IO ()

{-# DEPRECATED dOMHTMLButtonElementSetDisabled ["(Since version 2.22)","Use JavaScriptCore API instead"] #-}
-- | /No description available in the introspection data./
dOMHTMLButtonElementSetDisabled ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMHTMLButtonElement a) =>
    a
    -- ^ /@self@/: A t'GI.WebKit2WebExtension.Objects.DOMHTMLButtonElement.DOMHTMLButtonElement'
    -> Bool
    -- ^ /@value@/: A t'P.Bool'
    -> m ()
dOMHTMLButtonElementSetDisabled :: a -> Bool -> m ()
dOMHTMLButtonElementSetDisabled a
self Bool
value = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    Ptr DOMHTMLButtonElement
self' <- a -> IO (Ptr DOMHTMLButtonElement)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
    let value' :: CInt
value' = (Int -> CInt
forall a b. (Integral a, Num b) => a -> b
fromIntegral (Int -> CInt) -> (Bool -> Int) -> Bool -> CInt
forall b c a. (b -> c) -> (a -> b) -> a -> c
. Bool -> Int
forall a. Enum a => a -> Int
fromEnum) Bool
value
    Ptr DOMHTMLButtonElement -> CInt -> IO ()
webkit_dom_html_button_element_set_disabled Ptr DOMHTMLButtonElement
self' CInt
value'
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
self
    () -> IO ()
forall (m :: * -> *) a. Monad m => a -> m a
return ()

#if defined(ENABLE_OVERLOADING)
data DOMHTMLButtonElementSetDisabledMethodInfo
instance (signature ~ (Bool -> m ()), MonadIO m, IsDOMHTMLButtonElement a) => O.MethodInfo DOMHTMLButtonElementSetDisabledMethodInfo a signature where
    overloadedMethod = dOMHTMLButtonElementSetDisabled

#endif

-- method DOMHTMLButtonElement::set_name
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "self"
--           , argType =
--               TInterface
--                 Name
--                   { namespace = "WebKit2WebExtension"
--                   , name = "DOMHTMLButtonElement"
--                   }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "A #WebKitDOMHTMLButtonElement"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       , Arg
--           { argCName = "value"
--           , argType = TBasicType TUTF8
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "A #gchar" , sinceVersion = Nothing }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Nothing
-- throws : False
-- Skip return : False

foreign import ccall "webkit_dom_html_button_element_set_name" webkit_dom_html_button_element_set_name :: 
    Ptr DOMHTMLButtonElement ->             -- self : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMHTMLButtonElement"})
    CString ->                              -- value : TBasicType TUTF8
    IO ()

{-# DEPRECATED dOMHTMLButtonElementSetName ["(Since version 2.22)","Use JavaScriptCore API instead"] #-}
-- | /No description available in the introspection data./
dOMHTMLButtonElementSetName ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMHTMLButtonElement a) =>
    a
    -- ^ /@self@/: A t'GI.WebKit2WebExtension.Objects.DOMHTMLButtonElement.DOMHTMLButtonElement'
    -> T.Text
    -- ^ /@value@/: A @/gchar/@
    -> m ()
dOMHTMLButtonElementSetName :: a -> Text -> m ()
dOMHTMLButtonElementSetName a
self Text
value = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    Ptr DOMHTMLButtonElement
self' <- a -> IO (Ptr DOMHTMLButtonElement)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
    CString
value' <- Text -> IO CString
textToCString Text
value
    Ptr DOMHTMLButtonElement -> CString -> IO ()
webkit_dom_html_button_element_set_name Ptr DOMHTMLButtonElement
self' CString
value'
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
self
    CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
value'
    () -> IO ()
forall (m :: * -> *) a. Monad m => a -> m a
return ()

#if defined(ENABLE_OVERLOADING)
data DOMHTMLButtonElementSetNameMethodInfo
instance (signature ~ (T.Text -> m ()), MonadIO m, IsDOMHTMLButtonElement a) => O.MethodInfo DOMHTMLButtonElementSetNameMethodInfo a signature where
    overloadedMethod = dOMHTMLButtonElementSetName

#endif

-- method DOMHTMLButtonElement::set_value
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "self"
--           , argType =
--               TInterface
--                 Name
--                   { namespace = "WebKit2WebExtension"
--                   , name = "DOMHTMLButtonElement"
--                   }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "A #WebKitDOMHTMLButtonElement"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       , Arg
--           { argCName = "value"
--           , argType = TBasicType TUTF8
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "A #gchar" , sinceVersion = Nothing }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Nothing
-- throws : False
-- Skip return : False

foreign import ccall "webkit_dom_html_button_element_set_value" webkit_dom_html_button_element_set_value :: 
    Ptr DOMHTMLButtonElement ->             -- self : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMHTMLButtonElement"})
    CString ->                              -- value : TBasicType TUTF8
    IO ()

{-# DEPRECATED dOMHTMLButtonElementSetValue ["(Since version 2.22)","Use JavaScriptCore API instead"] #-}
-- | /No description available in the introspection data./
dOMHTMLButtonElementSetValue ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMHTMLButtonElement a) =>
    a
    -- ^ /@self@/: A t'GI.WebKit2WebExtension.Objects.DOMHTMLButtonElement.DOMHTMLButtonElement'
    -> T.Text
    -- ^ /@value@/: A @/gchar/@
    -> m ()
dOMHTMLButtonElementSetValue :: a -> Text -> m ()
dOMHTMLButtonElementSetValue a
self Text
value = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    Ptr DOMHTMLButtonElement
self' <- a -> IO (Ptr DOMHTMLButtonElement)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
    CString
value' <- Text -> IO CString
textToCString Text
value
    Ptr DOMHTMLButtonElement -> CString -> IO ()
webkit_dom_html_button_element_set_value Ptr DOMHTMLButtonElement
self' CString
value'
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
self
    CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
value'
    () -> IO ()
forall (m :: * -> *) a. Monad m => a -> m a
return ()

#if defined(ENABLE_OVERLOADING)
data DOMHTMLButtonElementSetValueMethodInfo
instance (signature ~ (T.Text -> m ()), MonadIO m, IsDOMHTMLButtonElement a) => O.MethodInfo DOMHTMLButtonElementSetValueMethodInfo a signature where
    overloadedMethod = dOMHTMLButtonElementSetValue

#endif