{- |
Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
License    : LGPL-2.1
Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
-}

module GI.WebKit.Objects.DOMWheelEvent
    ( 

-- * Exported types
    DOMWheelEvent(..)                       ,
    IsDOMWheelEvent                         ,
    toDOMWheelEvent                         ,
    noDOMWheelEvent                         ,


 -- * Methods
-- ** getDeltaMode #method:getDeltaMode#
    DOMWheelEventGetDeltaModeMethodInfo     ,
    dOMWheelEventGetDeltaMode               ,


-- ** getDeltaX #method:getDeltaX#
    DOMWheelEventGetDeltaXMethodInfo        ,
    dOMWheelEventGetDeltaX                  ,


-- ** getDeltaY #method:getDeltaY#
    DOMWheelEventGetDeltaYMethodInfo        ,
    dOMWheelEventGetDeltaY                  ,


-- ** getDeltaZ #method:getDeltaZ#
    DOMWheelEventGetDeltaZMethodInfo        ,
    dOMWheelEventGetDeltaZ                  ,


-- ** getWebkitDirectionInvertedFromDevice #method:getWebkitDirectionInvertedFromDevice#
    DOMWheelEventGetWebkitDirectionInvertedFromDeviceMethodInfo,
    dOMWheelEventGetWebkitDirectionInvertedFromDevice,


-- ** getWheelDelta #method:getWheelDelta#
    DOMWheelEventGetWheelDeltaMethodInfo    ,
    dOMWheelEventGetWheelDelta              ,


-- ** getWheelDeltaX #method:getWheelDeltaX#
    DOMWheelEventGetWheelDeltaXMethodInfo   ,
    dOMWheelEventGetWheelDeltaX             ,


-- ** getWheelDeltaY #method:getWheelDeltaY#
    DOMWheelEventGetWheelDeltaYMethodInfo   ,
    dOMWheelEventGetWheelDeltaY             ,


-- ** initWheelEvent #method:initWheelEvent#
    DOMWheelEventInitWheelEventMethodInfo   ,
    dOMWheelEventInitWheelEvent             ,




 -- * Properties
-- ** deltaMode #attr:deltaMode#
    DOMWheelEventDeltaModePropertyInfo      ,
    dOMWheelEventDeltaMode                  ,
    getDOMWheelEventDeltaMode               ,


-- ** deltaX #attr:deltaX#
    DOMWheelEventDeltaXPropertyInfo         ,
    dOMWheelEventDeltaX                     ,
    getDOMWheelEventDeltaX                  ,


-- ** deltaY #attr:deltaY#
    DOMWheelEventDeltaYPropertyInfo         ,
    dOMWheelEventDeltaY                     ,
    getDOMWheelEventDeltaY                  ,


-- ** deltaZ #attr:deltaZ#
    DOMWheelEventDeltaZPropertyInfo         ,
    dOMWheelEventDeltaZ                     ,
    getDOMWheelEventDeltaZ                  ,


-- ** webkitDirectionInvertedFromDevice #attr:webkitDirectionInvertedFromDevice#
    DOMWheelEventWebkitDirectionInvertedFromDevicePropertyInfo,
    dOMWheelEventWebkitDirectionInvertedFromDevice,
    getDOMWheelEventWebkitDirectionInvertedFromDevice,


-- ** wheelDelta #attr:wheelDelta#
    DOMWheelEventWheelDeltaPropertyInfo     ,
    dOMWheelEventWheelDelta                 ,
    getDOMWheelEventWheelDelta              ,


-- ** wheelDeltaX #attr:wheelDeltaX#
    DOMWheelEventWheelDeltaXPropertyInfo    ,
    dOMWheelEventWheelDeltaX                ,
    getDOMWheelEventWheelDeltaX             ,


-- ** wheelDeltaY #attr:wheelDeltaY#
    DOMWheelEventWheelDeltaYPropertyInfo    ,
    dOMWheelEventWheelDeltaY                ,
    getDOMWheelEventWheelDeltaY             ,




    ) 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.ManagedPtr as B.ManagedPtr
import qualified Data.GI.Base.GError as B.GError
import qualified Data.GI.Base.GVariant as B.GVariant
import qualified Data.GI.Base.GParamSpec as B.GParamSpec
import qualified Data.GI.Base.CallStack as B.CallStack
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 GI.GObject.Objects.Object as GObject.Object
import {-# SOURCE #-} qualified GI.WebKit.Objects.DOMDOMWindow as WebKit.DOMDOMWindow
import {-# SOURCE #-} qualified GI.WebKit.Objects.DOMEvent as WebKit.DOMEvent
import {-# SOURCE #-} qualified GI.WebKit.Objects.DOMMouseEvent as WebKit.DOMMouseEvent
import {-# SOURCE #-} qualified GI.WebKit.Objects.DOMObject as WebKit.DOMObject
import {-# SOURCE #-} qualified GI.WebKit.Objects.DOMUIEvent as WebKit.DOMUIEvent

newtype DOMWheelEvent = DOMWheelEvent (ManagedPtr DOMWheelEvent)
foreign import ccall "webkit_dom_wheel_event_get_type"
    c_webkit_dom_wheel_event_get_type :: IO GType

instance GObject DOMWheelEvent where
    gobjectType _ = c_webkit_dom_wheel_event_get_type
    

class GObject o => IsDOMWheelEvent o
#if MIN_VERSION_base(4,9,0)
instance {-# OVERLAPPABLE #-} (GObject a, O.UnknownAncestorError DOMWheelEvent a) =>
    IsDOMWheelEvent a
#endif
instance IsDOMWheelEvent DOMWheelEvent
instance WebKit.DOMMouseEvent.IsDOMMouseEvent DOMWheelEvent
instance WebKit.DOMUIEvent.IsDOMUIEvent DOMWheelEvent
instance WebKit.DOMEvent.IsDOMEvent DOMWheelEvent
instance WebKit.DOMObject.IsDOMObject DOMWheelEvent
instance GObject.Object.IsObject DOMWheelEvent

toDOMWheelEvent :: IsDOMWheelEvent o => o -> IO DOMWheelEvent
toDOMWheelEvent = unsafeCastTo DOMWheelEvent

noDOMWheelEvent :: Maybe DOMWheelEvent
noDOMWheelEvent = Nothing

type family ResolveDOMWheelEventMethod (t :: Symbol) (o :: *) :: * where
    ResolveDOMWheelEventMethod "bindProperty" o = GObject.Object.ObjectBindPropertyMethodInfo
    ResolveDOMWheelEventMethod "bindPropertyFull" o = GObject.Object.ObjectBindPropertyFullMethodInfo
    ResolveDOMWheelEventMethod "forceFloating" o = GObject.Object.ObjectForceFloatingMethodInfo
    ResolveDOMWheelEventMethod "freezeNotify" o = GObject.Object.ObjectFreezeNotifyMethodInfo
    ResolveDOMWheelEventMethod "initEvent" o = WebKit.DOMEvent.DOMEventInitEventMethodInfo
    ResolveDOMWheelEventMethod "initMouseEvent" o = WebKit.DOMMouseEvent.DOMMouseEventInitMouseEventMethodInfo
    ResolveDOMWheelEventMethod "initUiEvent" o = WebKit.DOMUIEvent.DOMUIEventInitUiEventMethodInfo
    ResolveDOMWheelEventMethod "initWheelEvent" o = DOMWheelEventInitWheelEventMethodInfo
    ResolveDOMWheelEventMethod "isFloating" o = GObject.Object.ObjectIsFloatingMethodInfo
    ResolveDOMWheelEventMethod "notify" o = GObject.Object.ObjectNotifyMethodInfo
    ResolveDOMWheelEventMethod "notifyByPspec" o = GObject.Object.ObjectNotifyByPspecMethodInfo
    ResolveDOMWheelEventMethod "preventDefault" o = WebKit.DOMEvent.DOMEventPreventDefaultMethodInfo
    ResolveDOMWheelEventMethod "ref" o = GObject.Object.ObjectRefMethodInfo
    ResolveDOMWheelEventMethod "refSink" o = GObject.Object.ObjectRefSinkMethodInfo
    ResolveDOMWheelEventMethod "replaceData" o = GObject.Object.ObjectReplaceDataMethodInfo
    ResolveDOMWheelEventMethod "replaceQdata" o = GObject.Object.ObjectReplaceQdataMethodInfo
    ResolveDOMWheelEventMethod "runDispose" o = GObject.Object.ObjectRunDisposeMethodInfo
    ResolveDOMWheelEventMethod "stealData" o = GObject.Object.ObjectStealDataMethodInfo
    ResolveDOMWheelEventMethod "stealQdata" o = GObject.Object.ObjectStealQdataMethodInfo
    ResolveDOMWheelEventMethod "stopImmediatePropagation" o = WebKit.DOMEvent.DOMEventStopImmediatePropagationMethodInfo
    ResolveDOMWheelEventMethod "stopPropagation" o = WebKit.DOMEvent.DOMEventStopPropagationMethodInfo
    ResolveDOMWheelEventMethod "thawNotify" o = GObject.Object.ObjectThawNotifyMethodInfo
    ResolveDOMWheelEventMethod "unref" o = GObject.Object.ObjectUnrefMethodInfo
    ResolveDOMWheelEventMethod "watchClosure" o = GObject.Object.ObjectWatchClosureMethodInfo
    ResolveDOMWheelEventMethod "getAltKey" o = WebKit.DOMMouseEvent.DOMMouseEventGetAltKeyMethodInfo
    ResolveDOMWheelEventMethod "getBubbles" o = WebKit.DOMEvent.DOMEventGetBubblesMethodInfo
    ResolveDOMWheelEventMethod "getButton" o = WebKit.DOMMouseEvent.DOMMouseEventGetButtonMethodInfo
    ResolveDOMWheelEventMethod "getCancelBubble" o = WebKit.DOMEvent.DOMEventGetCancelBubbleMethodInfo
    ResolveDOMWheelEventMethod "getCancelable" o = WebKit.DOMEvent.DOMEventGetCancelableMethodInfo
    ResolveDOMWheelEventMethod "getCharCode" o = WebKit.DOMUIEvent.DOMUIEventGetCharCodeMethodInfo
    ResolveDOMWheelEventMethod "getClientX" o = WebKit.DOMMouseEvent.DOMMouseEventGetClientXMethodInfo
    ResolveDOMWheelEventMethod "getClientY" o = WebKit.DOMMouseEvent.DOMMouseEventGetClientYMethodInfo
    ResolveDOMWheelEventMethod "getCtrlKey" o = WebKit.DOMMouseEvent.DOMMouseEventGetCtrlKeyMethodInfo
    ResolveDOMWheelEventMethod "getCurrentTarget" o = WebKit.DOMEvent.DOMEventGetCurrentTargetMethodInfo
    ResolveDOMWheelEventMethod "getData" o = GObject.Object.ObjectGetDataMethodInfo
    ResolveDOMWheelEventMethod "getDefaultPrevented" o = WebKit.DOMEvent.DOMEventGetDefaultPreventedMethodInfo
    ResolveDOMWheelEventMethod "getDeltaMode" o = DOMWheelEventGetDeltaModeMethodInfo
    ResolveDOMWheelEventMethod "getDeltaX" o = DOMWheelEventGetDeltaXMethodInfo
    ResolveDOMWheelEventMethod "getDeltaY" o = DOMWheelEventGetDeltaYMethodInfo
    ResolveDOMWheelEventMethod "getDeltaZ" o = DOMWheelEventGetDeltaZMethodInfo
    ResolveDOMWheelEventMethod "getDetail" o = WebKit.DOMUIEvent.DOMUIEventGetDetailMethodInfo
    ResolveDOMWheelEventMethod "getEventPhase" o = WebKit.DOMEvent.DOMEventGetEventPhaseMethodInfo
    ResolveDOMWheelEventMethod "getFromElement" o = WebKit.DOMMouseEvent.DOMMouseEventGetFromElementMethodInfo
    ResolveDOMWheelEventMethod "getKeyCode" o = WebKit.DOMUIEvent.DOMUIEventGetKeyCodeMethodInfo
    ResolveDOMWheelEventMethod "getLayerX" o = WebKit.DOMUIEvent.DOMUIEventGetLayerXMethodInfo
    ResolveDOMWheelEventMethod "getLayerY" o = WebKit.DOMUIEvent.DOMUIEventGetLayerYMethodInfo
    ResolveDOMWheelEventMethod "getMetaKey" o = WebKit.DOMMouseEvent.DOMMouseEventGetMetaKeyMethodInfo
    ResolveDOMWheelEventMethod "getOffsetX" o = WebKit.DOMMouseEvent.DOMMouseEventGetOffsetXMethodInfo
    ResolveDOMWheelEventMethod "getOffsetY" o = WebKit.DOMMouseEvent.DOMMouseEventGetOffsetYMethodInfo
    ResolveDOMWheelEventMethod "getPageX" o = WebKit.DOMUIEvent.DOMUIEventGetPageXMethodInfo
    ResolveDOMWheelEventMethod "getPageY" o = WebKit.DOMUIEvent.DOMUIEventGetPageYMethodInfo
    ResolveDOMWheelEventMethod "getProperty" o = GObject.Object.ObjectGetPropertyMethodInfo
    ResolveDOMWheelEventMethod "getQdata" o = GObject.Object.ObjectGetQdataMethodInfo
    ResolveDOMWheelEventMethod "getRelatedTarget" o = WebKit.DOMMouseEvent.DOMMouseEventGetRelatedTargetMethodInfo
    ResolveDOMWheelEventMethod "getReturnValue" o = WebKit.DOMEvent.DOMEventGetReturnValueMethodInfo
    ResolveDOMWheelEventMethod "getScreenX" o = WebKit.DOMMouseEvent.DOMMouseEventGetScreenXMethodInfo
    ResolveDOMWheelEventMethod "getScreenY" o = WebKit.DOMMouseEvent.DOMMouseEventGetScreenYMethodInfo
    ResolveDOMWheelEventMethod "getShiftKey" o = WebKit.DOMMouseEvent.DOMMouseEventGetShiftKeyMethodInfo
    ResolveDOMWheelEventMethod "getSrcElement" o = WebKit.DOMEvent.DOMEventGetSrcElementMethodInfo
    ResolveDOMWheelEventMethod "getTarget" o = WebKit.DOMEvent.DOMEventGetTargetMethodInfo
    ResolveDOMWheelEventMethod "getTimeStamp" o = WebKit.DOMEvent.DOMEventGetTimeStampMethodInfo
    ResolveDOMWheelEventMethod "getToElement" o = WebKit.DOMMouseEvent.DOMMouseEventGetToElementMethodInfo
    ResolveDOMWheelEventMethod "getView" o = WebKit.DOMUIEvent.DOMUIEventGetViewMethodInfo
    ResolveDOMWheelEventMethod "getWebkitDirectionInvertedFromDevice" o = DOMWheelEventGetWebkitDirectionInvertedFromDeviceMethodInfo
    ResolveDOMWheelEventMethod "getWebkitMovementX" o = WebKit.DOMMouseEvent.DOMMouseEventGetWebkitMovementXMethodInfo
    ResolveDOMWheelEventMethod "getWebkitMovementY" o = WebKit.DOMMouseEvent.DOMMouseEventGetWebkitMovementYMethodInfo
    ResolveDOMWheelEventMethod "getWheelDelta" o = DOMWheelEventGetWheelDeltaMethodInfo
    ResolveDOMWheelEventMethod "getWheelDeltaX" o = DOMWheelEventGetWheelDeltaXMethodInfo
    ResolveDOMWheelEventMethod "getWheelDeltaY" o = DOMWheelEventGetWheelDeltaYMethodInfo
    ResolveDOMWheelEventMethod "getWhich" o = WebKit.DOMUIEvent.DOMUIEventGetWhichMethodInfo
    ResolveDOMWheelEventMethod "getX" o = WebKit.DOMMouseEvent.DOMMouseEventGetXMethodInfo
    ResolveDOMWheelEventMethod "getY" o = WebKit.DOMMouseEvent.DOMMouseEventGetYMethodInfo
    ResolveDOMWheelEventMethod "setCancelBubble" o = WebKit.DOMEvent.DOMEventSetCancelBubbleMethodInfo
    ResolveDOMWheelEventMethod "setData" o = GObject.Object.ObjectSetDataMethodInfo
    ResolveDOMWheelEventMethod "setProperty" o = GObject.Object.ObjectSetPropertyMethodInfo
    ResolveDOMWheelEventMethod "setReturnValue" o = WebKit.DOMEvent.DOMEventSetReturnValueMethodInfo
    ResolveDOMWheelEventMethod l o = O.MethodResolutionFailed l o

instance (info ~ ResolveDOMWheelEventMethod t DOMWheelEvent, O.MethodInfo info DOMWheelEvent p) => O.IsLabelProxy t (DOMWheelEvent -> p) where
    fromLabelProxy _ = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)

#if MIN_VERSION_base(4,9,0)
instance (info ~ ResolveDOMWheelEventMethod t DOMWheelEvent, O.MethodInfo info DOMWheelEvent p) => O.IsLabel t (DOMWheelEvent -> p) where
    fromLabel _ = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
#endif

-- VVV Prop "delta-mode"
   -- Type: TBasicType TULong
   -- Flags: [PropertyReadable]
   -- Nullable: (Just False,Nothing)

getDOMWheelEventDeltaMode :: (MonadIO m, IsDOMWheelEvent o) => o -> m CULong
getDOMWheelEventDeltaMode obj = liftIO $ getObjectPropertyULong obj "delta-mode"

data DOMWheelEventDeltaModePropertyInfo
instance AttrInfo DOMWheelEventDeltaModePropertyInfo where
    type AttrAllowedOps DOMWheelEventDeltaModePropertyInfo = '[ 'AttrGet]
    type AttrSetTypeConstraint DOMWheelEventDeltaModePropertyInfo = (~) ()
    type AttrBaseTypeConstraint DOMWheelEventDeltaModePropertyInfo = IsDOMWheelEvent
    type AttrGetType DOMWheelEventDeltaModePropertyInfo = CULong
    type AttrLabel DOMWheelEventDeltaModePropertyInfo = "delta-mode"
    type AttrOrigin DOMWheelEventDeltaModePropertyInfo = DOMWheelEvent
    attrGet _ = getDOMWheelEventDeltaMode
    attrSet _ = undefined
    attrConstruct _ = undefined
    attrClear _ = undefined

-- VVV Prop "delta-x"
   -- Type: TBasicType TDouble
   -- Flags: [PropertyReadable]
   -- Nullable: (Just False,Nothing)

getDOMWheelEventDeltaX :: (MonadIO m, IsDOMWheelEvent o) => o -> m Double
getDOMWheelEventDeltaX obj = liftIO $ getObjectPropertyDouble obj "delta-x"

data DOMWheelEventDeltaXPropertyInfo
instance AttrInfo DOMWheelEventDeltaXPropertyInfo where
    type AttrAllowedOps DOMWheelEventDeltaXPropertyInfo = '[ 'AttrGet]
    type AttrSetTypeConstraint DOMWheelEventDeltaXPropertyInfo = (~) ()
    type AttrBaseTypeConstraint DOMWheelEventDeltaXPropertyInfo = IsDOMWheelEvent
    type AttrGetType DOMWheelEventDeltaXPropertyInfo = Double
    type AttrLabel DOMWheelEventDeltaXPropertyInfo = "delta-x"
    type AttrOrigin DOMWheelEventDeltaXPropertyInfo = DOMWheelEvent
    attrGet _ = getDOMWheelEventDeltaX
    attrSet _ = undefined
    attrConstruct _ = undefined
    attrClear _ = undefined

-- VVV Prop "delta-y"
   -- Type: TBasicType TDouble
   -- Flags: [PropertyReadable]
   -- Nullable: (Just False,Nothing)

getDOMWheelEventDeltaY :: (MonadIO m, IsDOMWheelEvent o) => o -> m Double
getDOMWheelEventDeltaY obj = liftIO $ getObjectPropertyDouble obj "delta-y"

data DOMWheelEventDeltaYPropertyInfo
instance AttrInfo DOMWheelEventDeltaYPropertyInfo where
    type AttrAllowedOps DOMWheelEventDeltaYPropertyInfo = '[ 'AttrGet]
    type AttrSetTypeConstraint DOMWheelEventDeltaYPropertyInfo = (~) ()
    type AttrBaseTypeConstraint DOMWheelEventDeltaYPropertyInfo = IsDOMWheelEvent
    type AttrGetType DOMWheelEventDeltaYPropertyInfo = Double
    type AttrLabel DOMWheelEventDeltaYPropertyInfo = "delta-y"
    type AttrOrigin DOMWheelEventDeltaYPropertyInfo = DOMWheelEvent
    attrGet _ = getDOMWheelEventDeltaY
    attrSet _ = undefined
    attrConstruct _ = undefined
    attrClear _ = undefined

-- VVV Prop "delta-z"
   -- Type: TBasicType TDouble
   -- Flags: [PropertyReadable]
   -- Nullable: (Just False,Nothing)

getDOMWheelEventDeltaZ :: (MonadIO m, IsDOMWheelEvent o) => o -> m Double
getDOMWheelEventDeltaZ obj = liftIO $ getObjectPropertyDouble obj "delta-z"

data DOMWheelEventDeltaZPropertyInfo
instance AttrInfo DOMWheelEventDeltaZPropertyInfo where
    type AttrAllowedOps DOMWheelEventDeltaZPropertyInfo = '[ 'AttrGet]
    type AttrSetTypeConstraint DOMWheelEventDeltaZPropertyInfo = (~) ()
    type AttrBaseTypeConstraint DOMWheelEventDeltaZPropertyInfo = IsDOMWheelEvent
    type AttrGetType DOMWheelEventDeltaZPropertyInfo = Double
    type AttrLabel DOMWheelEventDeltaZPropertyInfo = "delta-z"
    type AttrOrigin DOMWheelEventDeltaZPropertyInfo = DOMWheelEvent
    attrGet _ = getDOMWheelEventDeltaZ
    attrSet _ = undefined
    attrConstruct _ = undefined
    attrClear _ = undefined

-- VVV Prop "webkit-direction-inverted-from-device"
   -- Type: TBasicType TBoolean
   -- Flags: [PropertyReadable]
   -- Nullable: (Just False,Nothing)

getDOMWheelEventWebkitDirectionInvertedFromDevice :: (MonadIO m, IsDOMWheelEvent o) => o -> m Bool
getDOMWheelEventWebkitDirectionInvertedFromDevice obj = liftIO $ getObjectPropertyBool obj "webkit-direction-inverted-from-device"

data DOMWheelEventWebkitDirectionInvertedFromDevicePropertyInfo
instance AttrInfo DOMWheelEventWebkitDirectionInvertedFromDevicePropertyInfo where
    type AttrAllowedOps DOMWheelEventWebkitDirectionInvertedFromDevicePropertyInfo = '[ 'AttrGet]
    type AttrSetTypeConstraint DOMWheelEventWebkitDirectionInvertedFromDevicePropertyInfo = (~) ()
    type AttrBaseTypeConstraint DOMWheelEventWebkitDirectionInvertedFromDevicePropertyInfo = IsDOMWheelEvent
    type AttrGetType DOMWheelEventWebkitDirectionInvertedFromDevicePropertyInfo = Bool
    type AttrLabel DOMWheelEventWebkitDirectionInvertedFromDevicePropertyInfo = "webkit-direction-inverted-from-device"
    type AttrOrigin DOMWheelEventWebkitDirectionInvertedFromDevicePropertyInfo = DOMWheelEvent
    attrGet _ = getDOMWheelEventWebkitDirectionInvertedFromDevice
    attrSet _ = undefined
    attrConstruct _ = undefined
    attrClear _ = undefined

-- VVV Prop "wheel-delta"
   -- Type: TBasicType TLong
   -- Flags: [PropertyReadable]
   -- Nullable: (Just False,Nothing)

getDOMWheelEventWheelDelta :: (MonadIO m, IsDOMWheelEvent o) => o -> m CLong
getDOMWheelEventWheelDelta obj = liftIO $ getObjectPropertyLong obj "wheel-delta"

data DOMWheelEventWheelDeltaPropertyInfo
instance AttrInfo DOMWheelEventWheelDeltaPropertyInfo where
    type AttrAllowedOps DOMWheelEventWheelDeltaPropertyInfo = '[ 'AttrGet]
    type AttrSetTypeConstraint DOMWheelEventWheelDeltaPropertyInfo = (~) ()
    type AttrBaseTypeConstraint DOMWheelEventWheelDeltaPropertyInfo = IsDOMWheelEvent
    type AttrGetType DOMWheelEventWheelDeltaPropertyInfo = CLong
    type AttrLabel DOMWheelEventWheelDeltaPropertyInfo = "wheel-delta"
    type AttrOrigin DOMWheelEventWheelDeltaPropertyInfo = DOMWheelEvent
    attrGet _ = getDOMWheelEventWheelDelta
    attrSet _ = undefined
    attrConstruct _ = undefined
    attrClear _ = undefined

-- VVV Prop "wheel-delta-x"
   -- Type: TBasicType TLong
   -- Flags: [PropertyReadable]
   -- Nullable: (Just False,Nothing)

getDOMWheelEventWheelDeltaX :: (MonadIO m, IsDOMWheelEvent o) => o -> m CLong
getDOMWheelEventWheelDeltaX obj = liftIO $ getObjectPropertyLong obj "wheel-delta-x"

data DOMWheelEventWheelDeltaXPropertyInfo
instance AttrInfo DOMWheelEventWheelDeltaXPropertyInfo where
    type AttrAllowedOps DOMWheelEventWheelDeltaXPropertyInfo = '[ 'AttrGet]
    type AttrSetTypeConstraint DOMWheelEventWheelDeltaXPropertyInfo = (~) ()
    type AttrBaseTypeConstraint DOMWheelEventWheelDeltaXPropertyInfo = IsDOMWheelEvent
    type AttrGetType DOMWheelEventWheelDeltaXPropertyInfo = CLong
    type AttrLabel DOMWheelEventWheelDeltaXPropertyInfo = "wheel-delta-x"
    type AttrOrigin DOMWheelEventWheelDeltaXPropertyInfo = DOMWheelEvent
    attrGet _ = getDOMWheelEventWheelDeltaX
    attrSet _ = undefined
    attrConstruct _ = undefined
    attrClear _ = undefined

-- VVV Prop "wheel-delta-y"
   -- Type: TBasicType TLong
   -- Flags: [PropertyReadable]
   -- Nullable: (Just False,Nothing)

getDOMWheelEventWheelDeltaY :: (MonadIO m, IsDOMWheelEvent o) => o -> m CLong
getDOMWheelEventWheelDeltaY obj = liftIO $ getObjectPropertyLong obj "wheel-delta-y"

data DOMWheelEventWheelDeltaYPropertyInfo
instance AttrInfo DOMWheelEventWheelDeltaYPropertyInfo where
    type AttrAllowedOps DOMWheelEventWheelDeltaYPropertyInfo = '[ 'AttrGet]
    type AttrSetTypeConstraint DOMWheelEventWheelDeltaYPropertyInfo = (~) ()
    type AttrBaseTypeConstraint DOMWheelEventWheelDeltaYPropertyInfo = IsDOMWheelEvent
    type AttrGetType DOMWheelEventWheelDeltaYPropertyInfo = CLong
    type AttrLabel DOMWheelEventWheelDeltaYPropertyInfo = "wheel-delta-y"
    type AttrOrigin DOMWheelEventWheelDeltaYPropertyInfo = DOMWheelEvent
    attrGet _ = getDOMWheelEventWheelDeltaY
    attrSet _ = undefined
    attrConstruct _ = undefined
    attrClear _ = undefined

instance O.HasAttributeList DOMWheelEvent
type instance O.AttributeList DOMWheelEvent = DOMWheelEventAttributeList
type DOMWheelEventAttributeList = ('[ '("altKey", WebKit.DOMMouseEvent.DOMMouseEventAltKeyPropertyInfo), '("bubbles", WebKit.DOMEvent.DOMEventBubblesPropertyInfo), '("button", WebKit.DOMMouseEvent.DOMMouseEventButtonPropertyInfo), '("cancelBubble", WebKit.DOMEvent.DOMEventCancelBubblePropertyInfo), '("cancelable", WebKit.DOMEvent.DOMEventCancelablePropertyInfo), '("charCode", WebKit.DOMUIEvent.DOMUIEventCharCodePropertyInfo), '("clientX", WebKit.DOMMouseEvent.DOMMouseEventClientXPropertyInfo), '("clientY", WebKit.DOMMouseEvent.DOMMouseEventClientYPropertyInfo), '("coreObject", WebKit.DOMObject.DOMObjectCoreObjectPropertyInfo), '("ctrlKey", WebKit.DOMMouseEvent.DOMMouseEventCtrlKeyPropertyInfo), '("currentTarget", WebKit.DOMEvent.DOMEventCurrentTargetPropertyInfo), '("defaultPrevented", WebKit.DOMEvent.DOMEventDefaultPreventedPropertyInfo), '("deltaMode", DOMWheelEventDeltaModePropertyInfo), '("deltaX", DOMWheelEventDeltaXPropertyInfo), '("deltaY", DOMWheelEventDeltaYPropertyInfo), '("deltaZ", DOMWheelEventDeltaZPropertyInfo), '("detail", WebKit.DOMUIEvent.DOMUIEventDetailPropertyInfo), '("eventPhase", WebKit.DOMEvent.DOMEventEventPhasePropertyInfo), '("fromElement", WebKit.DOMMouseEvent.DOMMouseEventFromElementPropertyInfo), '("keyCode", WebKit.DOMUIEvent.DOMUIEventKeyCodePropertyInfo), '("layerX", WebKit.DOMUIEvent.DOMUIEventLayerXPropertyInfo), '("layerY", WebKit.DOMUIEvent.DOMUIEventLayerYPropertyInfo), '("metaKey", WebKit.DOMMouseEvent.DOMMouseEventMetaKeyPropertyInfo), '("offsetX", WebKit.DOMMouseEvent.DOMMouseEventOffsetXPropertyInfo), '("offsetY", WebKit.DOMMouseEvent.DOMMouseEventOffsetYPropertyInfo), '("pageX", WebKit.DOMUIEvent.DOMUIEventPageXPropertyInfo), '("pageY", WebKit.DOMUIEvent.DOMUIEventPageYPropertyInfo), '("relatedTarget", WebKit.DOMMouseEvent.DOMMouseEventRelatedTargetPropertyInfo), '("returnValue", WebKit.DOMEvent.DOMEventReturnValuePropertyInfo), '("screenX", WebKit.DOMMouseEvent.DOMMouseEventScreenXPropertyInfo), '("screenY", WebKit.DOMMouseEvent.DOMMouseEventScreenYPropertyInfo), '("shiftKey", WebKit.DOMMouseEvent.DOMMouseEventShiftKeyPropertyInfo), '("srcElement", WebKit.DOMEvent.DOMEventSrcElementPropertyInfo), '("target", WebKit.DOMEvent.DOMEventTargetPropertyInfo), '("timeStamp", WebKit.DOMEvent.DOMEventTimeStampPropertyInfo), '("toElement", WebKit.DOMMouseEvent.DOMMouseEventToElementPropertyInfo), '("type", WebKit.DOMEvent.DOMEventTypePropertyInfo), '("view", WebKit.DOMUIEvent.DOMUIEventViewPropertyInfo), '("webkitDirectionInvertedFromDevice", DOMWheelEventWebkitDirectionInvertedFromDevicePropertyInfo), '("webkitMovementX", WebKit.DOMMouseEvent.DOMMouseEventWebkitMovementXPropertyInfo), '("webkitMovementY", WebKit.DOMMouseEvent.DOMMouseEventWebkitMovementYPropertyInfo), '("wheelDelta", DOMWheelEventWheelDeltaPropertyInfo), '("wheelDeltaX", DOMWheelEventWheelDeltaXPropertyInfo), '("wheelDeltaY", DOMWheelEventWheelDeltaYPropertyInfo), '("which", WebKit.DOMUIEvent.DOMUIEventWhichPropertyInfo), '("x", WebKit.DOMMouseEvent.DOMMouseEventXPropertyInfo), '("y", WebKit.DOMMouseEvent.DOMMouseEventYPropertyInfo)] :: [(Symbol, *)])

dOMWheelEventDeltaMode :: AttrLabelProxy "deltaMode"
dOMWheelEventDeltaMode = AttrLabelProxy

dOMWheelEventDeltaX :: AttrLabelProxy "deltaX"
dOMWheelEventDeltaX = AttrLabelProxy

dOMWheelEventDeltaY :: AttrLabelProxy "deltaY"
dOMWheelEventDeltaY = AttrLabelProxy

dOMWheelEventDeltaZ :: AttrLabelProxy "deltaZ"
dOMWheelEventDeltaZ = AttrLabelProxy

dOMWheelEventWebkitDirectionInvertedFromDevice :: AttrLabelProxy "webkitDirectionInvertedFromDevice"
dOMWheelEventWebkitDirectionInvertedFromDevice = AttrLabelProxy

dOMWheelEventWheelDelta :: AttrLabelProxy "wheelDelta"
dOMWheelEventWheelDelta = AttrLabelProxy

dOMWheelEventWheelDeltaX :: AttrLabelProxy "wheelDeltaX"
dOMWheelEventWheelDeltaX = AttrLabelProxy

dOMWheelEventWheelDeltaY :: AttrLabelProxy "wheelDeltaY"
dOMWheelEventWheelDeltaY = AttrLabelProxy

type instance O.SignalList DOMWheelEvent = DOMWheelEventSignalList
type DOMWheelEventSignalList = ('[ '("notify", GObject.Object.ObjectNotifySignalInfo)] :: [(Symbol, *)])

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

foreign import ccall "webkit_dom_wheel_event_get_delta_mode" webkit_dom_wheel_event_get_delta_mode :: 
    Ptr DOMWheelEvent ->                    -- self : TInterface (Name {namespace = "WebKit", name = "DOMWheelEvent"})
    IO CULong

{- |
/No description available in the introspection data./
-}
dOMWheelEventGetDeltaMode ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMWheelEvent a) =>
    a
    {- ^ /@self@/: A 'GI.WebKit.Objects.DOMWheelEvent.DOMWheelEvent' -}
    -> m CULong
    {- ^ __Returns:__ A @/gulong/@ -}
dOMWheelEventGetDeltaMode self = liftIO $ do
    self' <- unsafeManagedPtrCastPtr self
    result <- webkit_dom_wheel_event_get_delta_mode self'
    touchManagedPtr self
    return result

data DOMWheelEventGetDeltaModeMethodInfo
instance (signature ~ (m CULong), MonadIO m, IsDOMWheelEvent a) => O.MethodInfo DOMWheelEventGetDeltaModeMethodInfo a signature where
    overloadedMethod _ = dOMWheelEventGetDeltaMode

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

foreign import ccall "webkit_dom_wheel_event_get_delta_x" webkit_dom_wheel_event_get_delta_x :: 
    Ptr DOMWheelEvent ->                    -- self : TInterface (Name {namespace = "WebKit", name = "DOMWheelEvent"})
    IO CDouble

{- |
/No description available in the introspection data./
-}
dOMWheelEventGetDeltaX ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMWheelEvent a) =>
    a
    {- ^ /@self@/: A 'GI.WebKit.Objects.DOMWheelEvent.DOMWheelEvent' -}
    -> m Double
    {- ^ __Returns:__ A @/gdouble/@ -}
dOMWheelEventGetDeltaX self = liftIO $ do
    self' <- unsafeManagedPtrCastPtr self
    result <- webkit_dom_wheel_event_get_delta_x self'
    let result' = realToFrac result
    touchManagedPtr self
    return result'

data DOMWheelEventGetDeltaXMethodInfo
instance (signature ~ (m Double), MonadIO m, IsDOMWheelEvent a) => O.MethodInfo DOMWheelEventGetDeltaXMethodInfo a signature where
    overloadedMethod _ = dOMWheelEventGetDeltaX

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

foreign import ccall "webkit_dom_wheel_event_get_delta_y" webkit_dom_wheel_event_get_delta_y :: 
    Ptr DOMWheelEvent ->                    -- self : TInterface (Name {namespace = "WebKit", name = "DOMWheelEvent"})
    IO CDouble

{- |
/No description available in the introspection data./
-}
dOMWheelEventGetDeltaY ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMWheelEvent a) =>
    a
    {- ^ /@self@/: A 'GI.WebKit.Objects.DOMWheelEvent.DOMWheelEvent' -}
    -> m Double
    {- ^ __Returns:__ A @/gdouble/@ -}
dOMWheelEventGetDeltaY self = liftIO $ do
    self' <- unsafeManagedPtrCastPtr self
    result <- webkit_dom_wheel_event_get_delta_y self'
    let result' = realToFrac result
    touchManagedPtr self
    return result'

data DOMWheelEventGetDeltaYMethodInfo
instance (signature ~ (m Double), MonadIO m, IsDOMWheelEvent a) => O.MethodInfo DOMWheelEventGetDeltaYMethodInfo a signature where
    overloadedMethod _ = dOMWheelEventGetDeltaY

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

foreign import ccall "webkit_dom_wheel_event_get_delta_z" webkit_dom_wheel_event_get_delta_z :: 
    Ptr DOMWheelEvent ->                    -- self : TInterface (Name {namespace = "WebKit", name = "DOMWheelEvent"})
    IO CDouble

{- |
/No description available in the introspection data./
-}
dOMWheelEventGetDeltaZ ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMWheelEvent a) =>
    a
    {- ^ /@self@/: A 'GI.WebKit.Objects.DOMWheelEvent.DOMWheelEvent' -}
    -> m Double
    {- ^ __Returns:__ A @/gdouble/@ -}
dOMWheelEventGetDeltaZ self = liftIO $ do
    self' <- unsafeManagedPtrCastPtr self
    result <- webkit_dom_wheel_event_get_delta_z self'
    let result' = realToFrac result
    touchManagedPtr self
    return result'

data DOMWheelEventGetDeltaZMethodInfo
instance (signature ~ (m Double), MonadIO m, IsDOMWheelEvent a) => O.MethodInfo DOMWheelEventGetDeltaZMethodInfo a signature where
    overloadedMethod _ = dOMWheelEventGetDeltaZ

-- method DOMWheelEvent::get_webkit_direction_inverted_from_device
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "self", argType = TInterface (Name {namespace = "WebKit", name = "DOMWheelEvent"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #WebKitDOMWheelEvent", 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_wheel_event_get_webkit_direction_inverted_from_device" webkit_dom_wheel_event_get_webkit_direction_inverted_from_device :: 
    Ptr DOMWheelEvent ->                    -- self : TInterface (Name {namespace = "WebKit", name = "DOMWheelEvent"})
    IO CInt

{- |
/No description available in the introspection data./
-}
dOMWheelEventGetWebkitDirectionInvertedFromDevice ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMWheelEvent a) =>
    a
    {- ^ /@self@/: A 'GI.WebKit.Objects.DOMWheelEvent.DOMWheelEvent' -}
    -> m Bool
    {- ^ __Returns:__ A 'Bool' -}
dOMWheelEventGetWebkitDirectionInvertedFromDevice self = liftIO $ do
    self' <- unsafeManagedPtrCastPtr self
    result <- webkit_dom_wheel_event_get_webkit_direction_inverted_from_device self'
    let result' = (/= 0) result
    touchManagedPtr self
    return result'

data DOMWheelEventGetWebkitDirectionInvertedFromDeviceMethodInfo
instance (signature ~ (m Bool), MonadIO m, IsDOMWheelEvent a) => O.MethodInfo DOMWheelEventGetWebkitDirectionInvertedFromDeviceMethodInfo a signature where
    overloadedMethod _ = dOMWheelEventGetWebkitDirectionInvertedFromDevice

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

foreign import ccall "webkit_dom_wheel_event_get_wheel_delta" webkit_dom_wheel_event_get_wheel_delta :: 
    Ptr DOMWheelEvent ->                    -- self : TInterface (Name {namespace = "WebKit", name = "DOMWheelEvent"})
    IO CLong

{- |
/No description available in the introspection data./
-}
dOMWheelEventGetWheelDelta ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMWheelEvent a) =>
    a
    {- ^ /@self@/: A 'GI.WebKit.Objects.DOMWheelEvent.DOMWheelEvent' -}
    -> m CLong
    {- ^ __Returns:__ A @/glong/@ -}
dOMWheelEventGetWheelDelta self = liftIO $ do
    self' <- unsafeManagedPtrCastPtr self
    result <- webkit_dom_wheel_event_get_wheel_delta self'
    touchManagedPtr self
    return result

data DOMWheelEventGetWheelDeltaMethodInfo
instance (signature ~ (m CLong), MonadIO m, IsDOMWheelEvent a) => O.MethodInfo DOMWheelEventGetWheelDeltaMethodInfo a signature where
    overloadedMethod _ = dOMWheelEventGetWheelDelta

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

foreign import ccall "webkit_dom_wheel_event_get_wheel_delta_x" webkit_dom_wheel_event_get_wheel_delta_x :: 
    Ptr DOMWheelEvent ->                    -- self : TInterface (Name {namespace = "WebKit", name = "DOMWheelEvent"})
    IO CLong

{- |
/No description available in the introspection data./
-}
dOMWheelEventGetWheelDeltaX ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMWheelEvent a) =>
    a
    {- ^ /@self@/: A 'GI.WebKit.Objects.DOMWheelEvent.DOMWheelEvent' -}
    -> m CLong
    {- ^ __Returns:__ A @/glong/@ -}
dOMWheelEventGetWheelDeltaX self = liftIO $ do
    self' <- unsafeManagedPtrCastPtr self
    result <- webkit_dom_wheel_event_get_wheel_delta_x self'
    touchManagedPtr self
    return result

data DOMWheelEventGetWheelDeltaXMethodInfo
instance (signature ~ (m CLong), MonadIO m, IsDOMWheelEvent a) => O.MethodInfo DOMWheelEventGetWheelDeltaXMethodInfo a signature where
    overloadedMethod _ = dOMWheelEventGetWheelDeltaX

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

foreign import ccall "webkit_dom_wheel_event_get_wheel_delta_y" webkit_dom_wheel_event_get_wheel_delta_y :: 
    Ptr DOMWheelEvent ->                    -- self : TInterface (Name {namespace = "WebKit", name = "DOMWheelEvent"})
    IO CLong

{- |
/No description available in the introspection data./
-}
dOMWheelEventGetWheelDeltaY ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMWheelEvent a) =>
    a
    {- ^ /@self@/: A 'GI.WebKit.Objects.DOMWheelEvent.DOMWheelEvent' -}
    -> m CLong
    {- ^ __Returns:__ A @/glong/@ -}
dOMWheelEventGetWheelDeltaY self = liftIO $ do
    self' <- unsafeManagedPtrCastPtr self
    result <- webkit_dom_wheel_event_get_wheel_delta_y self'
    touchManagedPtr self
    return result

data DOMWheelEventGetWheelDeltaYMethodInfo
instance (signature ~ (m CLong), MonadIO m, IsDOMWheelEvent a) => O.MethodInfo DOMWheelEventGetWheelDeltaYMethodInfo a signature where
    overloadedMethod _ = dOMWheelEventGetWheelDeltaY

-- method DOMWheelEvent::init_wheel_event
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "self", argType = TInterface (Name {namespace = "WebKit", name = "DOMWheelEvent"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #WebKitDOMWheelEvent", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "wheelDeltaX", argType = TBasicType TLong, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #glong", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "wheelDeltaY", argType = TBasicType TLong, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #glong", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "view", argType = TInterface (Name {namespace = "WebKit", name = "DOMDOMWindow"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #WebKitDOMDOMWindow", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "screenX", argType = TBasicType TLong, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #glong", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "screenY", argType = TBasicType TLong, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #glong", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "clientX", argType = TBasicType TLong, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #glong", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "clientY", argType = TBasicType TLong, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #glong", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "ctrlKey", 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},Arg {argCName = "altKey", 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},Arg {argCName = "shiftKey", 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},Arg {argCName = "metaKey", 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_wheel_event_init_wheel_event" webkit_dom_wheel_event_init_wheel_event :: 
    Ptr DOMWheelEvent ->                    -- self : TInterface (Name {namespace = "WebKit", name = "DOMWheelEvent"})
    CLong ->                                -- wheelDeltaX : TBasicType TLong
    CLong ->                                -- wheelDeltaY : TBasicType TLong
    Ptr WebKit.DOMDOMWindow.DOMDOMWindow -> -- view : TInterface (Name {namespace = "WebKit", name = "DOMDOMWindow"})
    CLong ->                                -- screenX : TBasicType TLong
    CLong ->                                -- screenY : TBasicType TLong
    CLong ->                                -- clientX : TBasicType TLong
    CLong ->                                -- clientY : TBasicType TLong
    CInt ->                                 -- ctrlKey : TBasicType TBoolean
    CInt ->                                 -- altKey : TBasicType TBoolean
    CInt ->                                 -- shiftKey : TBasicType TBoolean
    CInt ->                                 -- metaKey : TBasicType TBoolean
    IO ()

{- |
/No description available in the introspection data./
-}
dOMWheelEventInitWheelEvent ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMWheelEvent a, WebKit.DOMDOMWindow.IsDOMDOMWindow b) =>
    a
    {- ^ /@self@/: A 'GI.WebKit.Objects.DOMWheelEvent.DOMWheelEvent' -}
    -> CLong
    {- ^ /@wheelDeltaX@/: A @/glong/@ -}
    -> CLong
    {- ^ /@wheelDeltaY@/: A @/glong/@ -}
    -> b
    {- ^ /@view@/: A 'GI.WebKit.Objects.DOMDOMWindow.DOMDOMWindow' -}
    -> CLong
    {- ^ /@screenX@/: A @/glong/@ -}
    -> CLong
    {- ^ /@screenY@/: A @/glong/@ -}
    -> CLong
    {- ^ /@clientX@/: A @/glong/@ -}
    -> CLong
    {- ^ /@clientY@/: A @/glong/@ -}
    -> Bool
    {- ^ /@ctrlKey@/: A 'Bool' -}
    -> Bool
    {- ^ /@altKey@/: A 'Bool' -}
    -> Bool
    {- ^ /@shiftKey@/: A 'Bool' -}
    -> Bool
    {- ^ /@metaKey@/: A 'Bool' -}
    -> m ()
dOMWheelEventInitWheelEvent self wheelDeltaX wheelDeltaY view screenX screenY clientX clientY ctrlKey altKey shiftKey metaKey = liftIO $ do
    self' <- unsafeManagedPtrCastPtr self
    view' <- unsafeManagedPtrCastPtr view
    let ctrlKey' = (fromIntegral . fromEnum) ctrlKey
    let altKey' = (fromIntegral . fromEnum) altKey
    let shiftKey' = (fromIntegral . fromEnum) shiftKey
    let metaKey' = (fromIntegral . fromEnum) metaKey
    webkit_dom_wheel_event_init_wheel_event self' wheelDeltaX wheelDeltaY view' screenX screenY clientX clientY ctrlKey' altKey' shiftKey' metaKey'
    touchManagedPtr self
    touchManagedPtr view
    return ()

data DOMWheelEventInitWheelEventMethodInfo
instance (signature ~ (CLong -> CLong -> b -> CLong -> CLong -> CLong -> CLong -> Bool -> Bool -> Bool -> Bool -> m ()), MonadIO m, IsDOMWheelEvent a, WebKit.DOMDOMWindow.IsDOMDOMWindow b) => O.MethodInfo DOMWheelEventInitWheelEventMethodInfo a signature where
    overloadedMethod _ = dOMWheelEventInitWheelEvent