#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
&& !defined(__HADDOCK_VERSION__))
module GI.WebKit2.Structs.OptionMenuItem
(
OptionMenuItem(..) ,
noOptionMenuItem ,
#if ENABLE_OVERLOADING
OptionMenuItemCopyMethodInfo ,
#endif
optionMenuItemCopy ,
#if ENABLE_OVERLOADING
OptionMenuItemFreeMethodInfo ,
#endif
optionMenuItemFree ,
#if ENABLE_OVERLOADING
OptionMenuItemGetLabelMethodInfo ,
#endif
optionMenuItemGetLabel ,
#if ENABLE_OVERLOADING
OptionMenuItemGetTooltipMethodInfo ,
#endif
optionMenuItemGetTooltip ,
#if ENABLE_OVERLOADING
OptionMenuItemIsEnabledMethodInfo ,
#endif
optionMenuItemIsEnabled ,
#if ENABLE_OVERLOADING
OptionMenuItemIsGroupChildMethodInfo ,
#endif
optionMenuItemIsGroupChild ,
#if ENABLE_OVERLOADING
OptionMenuItemIsGroupLabelMethodInfo ,
#endif
optionMenuItemIsGroupLabel ,
#if ENABLE_OVERLOADING
OptionMenuItemIsSelectedMethodInfo ,
#endif
optionMenuItemIsSelected ,
) 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
newtype OptionMenuItem = OptionMenuItem (ManagedPtr OptionMenuItem)
foreign import ccall "webkit_option_menu_item_get_type" c_webkit_option_menu_item_get_type ::
IO GType
instance BoxedObject OptionMenuItem where
boxedType _ = c_webkit_option_menu_item_get_type
noOptionMenuItem :: Maybe OptionMenuItem
noOptionMenuItem = Nothing
#if ENABLE_OVERLOADING
instance O.HasAttributeList OptionMenuItem
type instance O.AttributeList OptionMenuItem = OptionMenuItemAttributeList
type OptionMenuItemAttributeList = ('[ ] :: [(Symbol, *)])
#endif
foreign import ccall "webkit_option_menu_item_copy" webkit_option_menu_item_copy ::
Ptr OptionMenuItem ->
IO (Ptr OptionMenuItem)
optionMenuItemCopy ::
(B.CallStack.HasCallStack, MonadIO m) =>
OptionMenuItem
-> m OptionMenuItem
optionMenuItemCopy item = liftIO $ do
item' <- unsafeManagedPtrGetPtr item
result <- webkit_option_menu_item_copy item'
checkUnexpectedReturnNULL "optionMenuItemCopy" result
result' <- (wrapBoxed OptionMenuItem) result
touchManagedPtr item
return result'
#if ENABLE_OVERLOADING
data OptionMenuItemCopyMethodInfo
instance (signature ~ (m OptionMenuItem), MonadIO m) => O.MethodInfo OptionMenuItemCopyMethodInfo OptionMenuItem signature where
overloadedMethod _ = optionMenuItemCopy
#endif
foreign import ccall "webkit_option_menu_item_free" webkit_option_menu_item_free ::
Ptr OptionMenuItem ->
IO ()
optionMenuItemFree ::
(B.CallStack.HasCallStack, MonadIO m) =>
OptionMenuItem
-> m ()
optionMenuItemFree item = liftIO $ do
item' <- unsafeManagedPtrGetPtr item
webkit_option_menu_item_free item'
touchManagedPtr item
return ()
#if ENABLE_OVERLOADING
data OptionMenuItemFreeMethodInfo
instance (signature ~ (m ()), MonadIO m) => O.MethodInfo OptionMenuItemFreeMethodInfo OptionMenuItem signature where
overloadedMethod _ = optionMenuItemFree
#endif
foreign import ccall "webkit_option_menu_item_get_label" webkit_option_menu_item_get_label ::
Ptr OptionMenuItem ->
IO CString
optionMenuItemGetLabel ::
(B.CallStack.HasCallStack, MonadIO m) =>
OptionMenuItem
-> m T.Text
optionMenuItemGetLabel item = liftIO $ do
item' <- unsafeManagedPtrGetPtr item
result <- webkit_option_menu_item_get_label item'
checkUnexpectedReturnNULL "optionMenuItemGetLabel" result
result' <- cstringToText result
touchManagedPtr item
return result'
#if ENABLE_OVERLOADING
data OptionMenuItemGetLabelMethodInfo
instance (signature ~ (m T.Text), MonadIO m) => O.MethodInfo OptionMenuItemGetLabelMethodInfo OptionMenuItem signature where
overloadedMethod _ = optionMenuItemGetLabel
#endif
foreign import ccall "webkit_option_menu_item_get_tooltip" webkit_option_menu_item_get_tooltip ::
Ptr OptionMenuItem ->
IO CString
optionMenuItemGetTooltip ::
(B.CallStack.HasCallStack, MonadIO m) =>
OptionMenuItem
-> m (Maybe T.Text)
optionMenuItemGetTooltip item = liftIO $ do
item' <- unsafeManagedPtrGetPtr item
result <- webkit_option_menu_item_get_tooltip item'
maybeResult <- convertIfNonNull result $ \result' -> do
result'' <- cstringToText result'
return result''
touchManagedPtr item
return maybeResult
#if ENABLE_OVERLOADING
data OptionMenuItemGetTooltipMethodInfo
instance (signature ~ (m (Maybe T.Text)), MonadIO m) => O.MethodInfo OptionMenuItemGetTooltipMethodInfo OptionMenuItem signature where
overloadedMethod _ = optionMenuItemGetTooltip
#endif
foreign import ccall "webkit_option_menu_item_is_enabled" webkit_option_menu_item_is_enabled ::
Ptr OptionMenuItem ->
IO CInt
optionMenuItemIsEnabled ::
(B.CallStack.HasCallStack, MonadIO m) =>
OptionMenuItem
-> m Bool
optionMenuItemIsEnabled item = liftIO $ do
item' <- unsafeManagedPtrGetPtr item
result <- webkit_option_menu_item_is_enabled item'
let result' = (/= 0) result
touchManagedPtr item
return result'
#if ENABLE_OVERLOADING
data OptionMenuItemIsEnabledMethodInfo
instance (signature ~ (m Bool), MonadIO m) => O.MethodInfo OptionMenuItemIsEnabledMethodInfo OptionMenuItem signature where
overloadedMethod _ = optionMenuItemIsEnabled
#endif
foreign import ccall "webkit_option_menu_item_is_group_child" webkit_option_menu_item_is_group_child ::
Ptr OptionMenuItem ->
IO CInt
optionMenuItemIsGroupChild ::
(B.CallStack.HasCallStack, MonadIO m) =>
OptionMenuItem
-> m Bool
optionMenuItemIsGroupChild item = liftIO $ do
item' <- unsafeManagedPtrGetPtr item
result <- webkit_option_menu_item_is_group_child item'
let result' = (/= 0) result
touchManagedPtr item
return result'
#if ENABLE_OVERLOADING
data OptionMenuItemIsGroupChildMethodInfo
instance (signature ~ (m Bool), MonadIO m) => O.MethodInfo OptionMenuItemIsGroupChildMethodInfo OptionMenuItem signature where
overloadedMethod _ = optionMenuItemIsGroupChild
#endif
foreign import ccall "webkit_option_menu_item_is_group_label" webkit_option_menu_item_is_group_label ::
Ptr OptionMenuItem ->
IO CInt
optionMenuItemIsGroupLabel ::
(B.CallStack.HasCallStack, MonadIO m) =>
OptionMenuItem
-> m Bool
optionMenuItemIsGroupLabel item = liftIO $ do
item' <- unsafeManagedPtrGetPtr item
result <- webkit_option_menu_item_is_group_label item'
let result' = (/= 0) result
touchManagedPtr item
return result'
#if ENABLE_OVERLOADING
data OptionMenuItemIsGroupLabelMethodInfo
instance (signature ~ (m Bool), MonadIO m) => O.MethodInfo OptionMenuItemIsGroupLabelMethodInfo OptionMenuItem signature where
overloadedMethod _ = optionMenuItemIsGroupLabel
#endif
foreign import ccall "webkit_option_menu_item_is_selected" webkit_option_menu_item_is_selected ::
Ptr OptionMenuItem ->
IO CInt
optionMenuItemIsSelected ::
(B.CallStack.HasCallStack, MonadIO m) =>
OptionMenuItem
-> m Bool
optionMenuItemIsSelected item = liftIO $ do
item' <- unsafeManagedPtrGetPtr item
result <- webkit_option_menu_item_is_selected item'
let result' = (/= 0) result
touchManagedPtr item
return result'
#if ENABLE_OVERLOADING
data OptionMenuItemIsSelectedMethodInfo
instance (signature ~ (m Bool), MonadIO m) => O.MethodInfo OptionMenuItemIsSelectedMethodInfo OptionMenuItem signature where
overloadedMethod _ = optionMenuItemIsSelected
#endif
#if ENABLE_OVERLOADING
type family ResolveOptionMenuItemMethod (t :: Symbol) (o :: *) :: * where
ResolveOptionMenuItemMethod "copy" o = OptionMenuItemCopyMethodInfo
ResolveOptionMenuItemMethod "free" o = OptionMenuItemFreeMethodInfo
ResolveOptionMenuItemMethod "isEnabled" o = OptionMenuItemIsEnabledMethodInfo
ResolveOptionMenuItemMethod "isGroupChild" o = OptionMenuItemIsGroupChildMethodInfo
ResolveOptionMenuItemMethod "isGroupLabel" o = OptionMenuItemIsGroupLabelMethodInfo
ResolveOptionMenuItemMethod "isSelected" o = OptionMenuItemIsSelectedMethodInfo
ResolveOptionMenuItemMethod "getLabel" o = OptionMenuItemGetLabelMethodInfo
ResolveOptionMenuItemMethod "getTooltip" o = OptionMenuItemGetTooltipMethodInfo
ResolveOptionMenuItemMethod l o = O.MethodResolutionFailed l o
instance (info ~ ResolveOptionMenuItemMethod t OptionMenuItem, O.MethodInfo info OptionMenuItem p) => OL.IsLabel t (OptionMenuItem -> 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