#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
&& !defined(__HADDOCK_VERSION__))
module GI.WebKit2.Objects.OptionMenu
(
OptionMenu(..) ,
IsOptionMenu ,
toOptionMenu ,
noOptionMenu ,
#if ENABLE_OVERLOADING
OptionMenuActivateItemMethodInfo ,
#endif
optionMenuActivateItem ,
#if ENABLE_OVERLOADING
OptionMenuCloseMethodInfo ,
#endif
optionMenuClose ,
#if ENABLE_OVERLOADING
OptionMenuGetItemMethodInfo ,
#endif
optionMenuGetItem ,
#if ENABLE_OVERLOADING
OptionMenuGetNItemsMethodInfo ,
#endif
optionMenuGetNItems ,
#if ENABLE_OVERLOADING
OptionMenuSelectItemMethodInfo ,
#endif
optionMenuSelectItem ,
C_OptionMenuCloseCallback ,
OptionMenuCloseCallback ,
#if ENABLE_OVERLOADING
OptionMenuCloseSignalInfo ,
#endif
afterOptionMenuClose ,
genClosure_OptionMenuClose ,
mk_OptionMenuCloseCallback ,
noOptionMenuCloseCallback ,
onOptionMenuClose ,
wrap_OptionMenuCloseCallback ,
) 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.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.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.WebKit2.Structs.OptionMenuItem as WebKit2.OptionMenuItem
newtype OptionMenu = OptionMenu (ManagedPtr OptionMenu)
foreign import ccall "webkit_option_menu_get_type"
c_webkit_option_menu_get_type :: IO GType
instance GObject OptionMenu where
gobjectType = c_webkit_option_menu_get_type
class (GObject o, O.IsDescendantOf OptionMenu o) => IsOptionMenu o
instance (GObject o, O.IsDescendantOf OptionMenu o) => IsOptionMenu o
instance O.HasParentTypes OptionMenu
type instance O.ParentTypes OptionMenu = '[GObject.Object.Object]
toOptionMenu :: (MonadIO m, IsOptionMenu o) => o -> m OptionMenu
toOptionMenu = liftIO . unsafeCastTo OptionMenu
noOptionMenu :: Maybe OptionMenu
noOptionMenu = Nothing
#if ENABLE_OVERLOADING
type family ResolveOptionMenuMethod (t :: Symbol) (o :: *) :: * where
ResolveOptionMenuMethod "activateItem" o = OptionMenuActivateItemMethodInfo
ResolveOptionMenuMethod "bindProperty" o = GObject.Object.ObjectBindPropertyMethodInfo
ResolveOptionMenuMethod "bindPropertyFull" o = GObject.Object.ObjectBindPropertyFullMethodInfo
ResolveOptionMenuMethod "close" o = OptionMenuCloseMethodInfo
ResolveOptionMenuMethod "forceFloating" o = GObject.Object.ObjectForceFloatingMethodInfo
ResolveOptionMenuMethod "freezeNotify" o = GObject.Object.ObjectFreezeNotifyMethodInfo
ResolveOptionMenuMethod "getv" o = GObject.Object.ObjectGetvMethodInfo
ResolveOptionMenuMethod "isFloating" o = GObject.Object.ObjectIsFloatingMethodInfo
ResolveOptionMenuMethod "notify" o = GObject.Object.ObjectNotifyMethodInfo
ResolveOptionMenuMethod "notifyByPspec" o = GObject.Object.ObjectNotifyByPspecMethodInfo
ResolveOptionMenuMethod "ref" o = GObject.Object.ObjectRefMethodInfo
ResolveOptionMenuMethod "refSink" o = GObject.Object.ObjectRefSinkMethodInfo
ResolveOptionMenuMethod "runDispose" o = GObject.Object.ObjectRunDisposeMethodInfo
ResolveOptionMenuMethod "selectItem" o = OptionMenuSelectItemMethodInfo
ResolveOptionMenuMethod "stealData" o = GObject.Object.ObjectStealDataMethodInfo
ResolveOptionMenuMethod "stealQdata" o = GObject.Object.ObjectStealQdataMethodInfo
ResolveOptionMenuMethod "thawNotify" o = GObject.Object.ObjectThawNotifyMethodInfo
ResolveOptionMenuMethod "unref" o = GObject.Object.ObjectUnrefMethodInfo
ResolveOptionMenuMethod "watchClosure" o = GObject.Object.ObjectWatchClosureMethodInfo
ResolveOptionMenuMethod "getData" o = GObject.Object.ObjectGetDataMethodInfo
ResolveOptionMenuMethod "getItem" o = OptionMenuGetItemMethodInfo
ResolveOptionMenuMethod "getNItems" o = OptionMenuGetNItemsMethodInfo
ResolveOptionMenuMethod "getProperty" o = GObject.Object.ObjectGetPropertyMethodInfo
ResolveOptionMenuMethod "getQdata" o = GObject.Object.ObjectGetQdataMethodInfo
ResolveOptionMenuMethod "setData" o = GObject.Object.ObjectSetDataMethodInfo
ResolveOptionMenuMethod "setProperty" o = GObject.Object.ObjectSetPropertyMethodInfo
ResolveOptionMenuMethod l o = O.MethodResolutionFailed l o
instance (info ~ ResolveOptionMenuMethod t OptionMenu, O.MethodInfo info OptionMenu p) => OL.IsLabel t (OptionMenu -> p) where
#if MIN_VERSION_base(4,10,0)
fromLabel = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
#else
fromLabel _ = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
#endif
#endif
type OptionMenuCloseCallback =
IO ()
noOptionMenuCloseCallback :: Maybe OptionMenuCloseCallback
noOptionMenuCloseCallback = Nothing
type C_OptionMenuCloseCallback =
Ptr () ->
Ptr () ->
IO ()
foreign import ccall "wrapper"
mk_OptionMenuCloseCallback :: C_OptionMenuCloseCallback -> IO (FunPtr C_OptionMenuCloseCallback)
genClosure_OptionMenuClose :: MonadIO m => OptionMenuCloseCallback -> m (GClosure C_OptionMenuCloseCallback)
genClosure_OptionMenuClose cb = liftIO $ do
let cb' = wrap_OptionMenuCloseCallback cb
mk_OptionMenuCloseCallback cb' >>= B.GClosure.newGClosure
wrap_OptionMenuCloseCallback ::
OptionMenuCloseCallback ->
C_OptionMenuCloseCallback
wrap_OptionMenuCloseCallback _cb _ _ = do
_cb
onOptionMenuClose :: (IsOptionMenu a, MonadIO m) => a -> OptionMenuCloseCallback -> m SignalHandlerId
onOptionMenuClose obj cb = liftIO $ do
let cb' = wrap_OptionMenuCloseCallback cb
cb'' <- mk_OptionMenuCloseCallback cb'
connectSignalFunPtr obj "close" cb'' SignalConnectBefore
afterOptionMenuClose :: (IsOptionMenu a, MonadIO m) => a -> OptionMenuCloseCallback -> m SignalHandlerId
afterOptionMenuClose obj cb = liftIO $ do
let cb' = wrap_OptionMenuCloseCallback cb
cb'' <- mk_OptionMenuCloseCallback cb'
connectSignalFunPtr obj "close" cb'' SignalConnectAfter
#if ENABLE_OVERLOADING
instance O.HasAttributeList OptionMenu
type instance O.AttributeList OptionMenu = OptionMenuAttributeList
type OptionMenuAttributeList = ('[ ] :: [(Symbol, *)])
#endif
#if ENABLE_OVERLOADING
#endif
#if ENABLE_OVERLOADING
data OptionMenuCloseSignalInfo
instance SignalInfo OptionMenuCloseSignalInfo where
type HaskellCallbackType OptionMenuCloseSignalInfo = OptionMenuCloseCallback
connectSignal _ obj cb connectMode = do
let cb' = wrap_OptionMenuCloseCallback cb
cb'' <- mk_OptionMenuCloseCallback cb'
connectSignalFunPtr obj "close" cb'' connectMode
type instance O.SignalList OptionMenu = OptionMenuSignalList
type OptionMenuSignalList = ('[ '("close", OptionMenuCloseSignalInfo), '("notify", GObject.Object.ObjectNotifySignalInfo)] :: [(Symbol, *)])
#endif
foreign import ccall "webkit_option_menu_activate_item" webkit_option_menu_activate_item ::
Ptr OptionMenu ->
Word32 ->
IO ()
optionMenuActivateItem ::
(B.CallStack.HasCallStack, MonadIO m, IsOptionMenu a) =>
a
-> Word32
-> m ()
optionMenuActivateItem menu index = liftIO $ do
menu' <- unsafeManagedPtrCastPtr menu
webkit_option_menu_activate_item menu' index
touchManagedPtr menu
return ()
#if ENABLE_OVERLOADING
data OptionMenuActivateItemMethodInfo
instance (signature ~ (Word32 -> m ()), MonadIO m, IsOptionMenu a) => O.MethodInfo OptionMenuActivateItemMethodInfo a signature where
overloadedMethod _ = optionMenuActivateItem
#endif
foreign import ccall "webkit_option_menu_close" webkit_option_menu_close ::
Ptr OptionMenu ->
IO ()
optionMenuClose ::
(B.CallStack.HasCallStack, MonadIO m, IsOptionMenu a) =>
a
-> m ()
optionMenuClose menu = liftIO $ do
menu' <- unsafeManagedPtrCastPtr menu
webkit_option_menu_close menu'
touchManagedPtr menu
return ()
#if ENABLE_OVERLOADING
data OptionMenuCloseMethodInfo
instance (signature ~ (m ()), MonadIO m, IsOptionMenu a) => O.MethodInfo OptionMenuCloseMethodInfo a signature where
overloadedMethod _ = optionMenuClose
#endif
foreign import ccall "webkit_option_menu_get_item" webkit_option_menu_get_item ::
Ptr OptionMenu ->
Word32 ->
IO (Ptr WebKit2.OptionMenuItem.OptionMenuItem)
optionMenuGetItem ::
(B.CallStack.HasCallStack, MonadIO m, IsOptionMenu a) =>
a
-> Word32
-> m (Maybe WebKit2.OptionMenuItem.OptionMenuItem)
optionMenuGetItem menu index = liftIO $ do
menu' <- unsafeManagedPtrCastPtr menu
result <- webkit_option_menu_get_item menu' index
maybeResult <- convertIfNonNull result $ \result' -> do
result'' <- (newBoxed WebKit2.OptionMenuItem.OptionMenuItem) result'
return result''
touchManagedPtr menu
return maybeResult
#if ENABLE_OVERLOADING
data OptionMenuGetItemMethodInfo
instance (signature ~ (Word32 -> m (Maybe WebKit2.OptionMenuItem.OptionMenuItem)), MonadIO m, IsOptionMenu a) => O.MethodInfo OptionMenuGetItemMethodInfo a signature where
overloadedMethod _ = optionMenuGetItem
#endif
foreign import ccall "webkit_option_menu_get_n_items" webkit_option_menu_get_n_items ::
Ptr OptionMenu ->
IO Word32
optionMenuGetNItems ::
(B.CallStack.HasCallStack, MonadIO m, IsOptionMenu a) =>
a
-> m Word32
optionMenuGetNItems menu = liftIO $ do
menu' <- unsafeManagedPtrCastPtr menu
result <- webkit_option_menu_get_n_items menu'
touchManagedPtr menu
return result
#if ENABLE_OVERLOADING
data OptionMenuGetNItemsMethodInfo
instance (signature ~ (m Word32), MonadIO m, IsOptionMenu a) => O.MethodInfo OptionMenuGetNItemsMethodInfo a signature where
overloadedMethod _ = optionMenuGetNItems
#endif
foreign import ccall "webkit_option_menu_select_item" webkit_option_menu_select_item ::
Ptr OptionMenu ->
Word32 ->
IO ()
optionMenuSelectItem ::
(B.CallStack.HasCallStack, MonadIO m, IsOptionMenu a) =>
a
-> Word32
-> m ()
optionMenuSelectItem menu index = liftIO $ do
menu' <- unsafeManagedPtrCastPtr menu
webkit_option_menu_select_item menu' index
touchManagedPtr menu
return ()
#if ENABLE_OVERLOADING
data OptionMenuSelectItemMethodInfo
instance (signature ~ (Word32 -> m ()), MonadIO m, IsOptionMenu a) => O.MethodInfo OptionMenuSelectItemMethodInfo a signature where
overloadedMethod _ = optionMenuSelectItem
#endif