gi-webkit-0.2.4.14: GI/WebKit/Objects/DOMDatabase.hs
{- |
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.DOMDatabase
(
-- * Exported types
DOMDatabase(..) ,
DOMDatabaseK ,
toDOMDatabase ,
noDOMDatabase ,
-- * Methods
-- ** dOMDatabaseGetVersion
DOMDatabaseGetVersionMethodInfo ,
dOMDatabaseGetVersion ,
-- * Properties
-- ** Version
DOMDatabaseVersionPropertyInfo ,
dOMDatabaseVersion ,
getDOMDatabaseVersion ,
) where
import Data.GI.Base.ShortPrelude
import qualified Data.GI.Base.Attributes as GI.Attributes
import qualified Data.Text as T
import qualified Data.ByteString.Char8 as B
import qualified Data.Map as Map
import GI.WebKit.Types
import GI.WebKit.Callbacks
import qualified GI.GObject as GObject
newtype DOMDatabase = DOMDatabase (ForeignPtr DOMDatabase)
foreign import ccall "webkit_dom_database_get_type"
c_webkit_dom_database_get_type :: IO GType
type instance ParentTypes DOMDatabase = DOMDatabaseParentTypes
type DOMDatabaseParentTypes = '[DOMObject, GObject.Object]
instance GObject DOMDatabase where
gobjectIsInitiallyUnowned _ = False
gobjectType _ = c_webkit_dom_database_get_type
class GObject o => DOMDatabaseK o
instance (GObject o, IsDescendantOf DOMDatabase o) => DOMDatabaseK o
toDOMDatabase :: DOMDatabaseK o => o -> IO DOMDatabase
toDOMDatabase = unsafeCastTo DOMDatabase
noDOMDatabase :: Maybe DOMDatabase
noDOMDatabase = Nothing
type family ResolveDOMDatabaseMethod (t :: Symbol) (o :: *) :: * where
ResolveDOMDatabaseMethod "bindProperty" o = GObject.ObjectBindPropertyMethodInfo
ResolveDOMDatabaseMethod "bindPropertyFull" o = GObject.ObjectBindPropertyFullMethodInfo
ResolveDOMDatabaseMethod "forceFloating" o = GObject.ObjectForceFloatingMethodInfo
ResolveDOMDatabaseMethod "freezeNotify" o = GObject.ObjectFreezeNotifyMethodInfo
ResolveDOMDatabaseMethod "isFloating" o = GObject.ObjectIsFloatingMethodInfo
ResolveDOMDatabaseMethod "notify" o = GObject.ObjectNotifyMethodInfo
ResolveDOMDatabaseMethod "notifyByPspec" o = GObject.ObjectNotifyByPspecMethodInfo
ResolveDOMDatabaseMethod "ref" o = GObject.ObjectRefMethodInfo
ResolveDOMDatabaseMethod "refSink" o = GObject.ObjectRefSinkMethodInfo
ResolveDOMDatabaseMethod "replaceData" o = GObject.ObjectReplaceDataMethodInfo
ResolveDOMDatabaseMethod "replaceQdata" o = GObject.ObjectReplaceQdataMethodInfo
ResolveDOMDatabaseMethod "runDispose" o = GObject.ObjectRunDisposeMethodInfo
ResolveDOMDatabaseMethod "stealData" o = GObject.ObjectStealDataMethodInfo
ResolveDOMDatabaseMethod "stealQdata" o = GObject.ObjectStealQdataMethodInfo
ResolveDOMDatabaseMethod "thawNotify" o = GObject.ObjectThawNotifyMethodInfo
ResolveDOMDatabaseMethod "unref" o = GObject.ObjectUnrefMethodInfo
ResolveDOMDatabaseMethod "watchClosure" o = GObject.ObjectWatchClosureMethodInfo
ResolveDOMDatabaseMethod "getData" o = GObject.ObjectGetDataMethodInfo
ResolveDOMDatabaseMethod "getProperty" o = GObject.ObjectGetPropertyMethodInfo
ResolveDOMDatabaseMethod "getQdata" o = GObject.ObjectGetQdataMethodInfo
ResolveDOMDatabaseMethod "getVersion" o = DOMDatabaseGetVersionMethodInfo
ResolveDOMDatabaseMethod "setData" o = GObject.ObjectSetDataMethodInfo
ResolveDOMDatabaseMethod "setProperty" o = GObject.ObjectSetPropertyMethodInfo
ResolveDOMDatabaseMethod l o = MethodResolutionFailed l o
instance (info ~ ResolveDOMDatabaseMethod t DOMDatabase, MethodInfo info DOMDatabase p) => IsLabelProxy t (DOMDatabase -> p) where
fromLabelProxy _ = overloadedMethod (MethodProxy :: MethodProxy info)
#if MIN_VERSION_base(4,9,0)
instance (info ~ ResolveDOMDatabaseMethod t DOMDatabase, MethodInfo info DOMDatabase p) => IsLabel t (DOMDatabase -> p) where
fromLabel _ = overloadedMethod (MethodProxy :: MethodProxy info)
#endif
-- VVV Prop "version"
-- Type: TBasicType TUTF8
-- Flags: [PropertyReadable]
-- Nullable: (Nothing,Nothing)
getDOMDatabaseVersion :: (MonadIO m, DOMDatabaseK o) => o -> m (Maybe T.Text)
getDOMDatabaseVersion obj = liftIO $ getObjectPropertyString obj "version"
data DOMDatabaseVersionPropertyInfo
instance AttrInfo DOMDatabaseVersionPropertyInfo where
type AttrAllowedOps DOMDatabaseVersionPropertyInfo = '[ 'AttrGet, 'AttrClear]
type AttrSetTypeConstraint DOMDatabaseVersionPropertyInfo = (~) ()
type AttrBaseTypeConstraint DOMDatabaseVersionPropertyInfo = DOMDatabaseK
type AttrGetType DOMDatabaseVersionPropertyInfo = (Maybe T.Text)
type AttrLabel DOMDatabaseVersionPropertyInfo = "version"
attrGet _ = getDOMDatabaseVersion
attrSet _ = undefined
attrConstruct _ = undefined
attrClear _ = undefined
type instance AttributeList DOMDatabase = DOMDatabaseAttributeList
type DOMDatabaseAttributeList = ('[ '("coreObject", DOMObjectCoreObjectPropertyInfo), '("version", DOMDatabaseVersionPropertyInfo)] :: [(Symbol, *)])
dOMDatabaseVersion :: AttrLabelProxy "version"
dOMDatabaseVersion = AttrLabelProxy
type instance SignalList DOMDatabase = DOMDatabaseSignalList
type DOMDatabaseSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo)] :: [(Symbol, *)])
-- method DOMDatabase::get_version
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "_obj", argType = TInterface "WebKit" "DOMDatabase", direction = DirectionIn, mayBeNull = False, 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_database_get_version" webkit_dom_database_get_version ::
Ptr DOMDatabase -> -- _obj : TInterface "WebKit" "DOMDatabase"
IO CString
dOMDatabaseGetVersion ::
(MonadIO m, DOMDatabaseK a) =>
a -- _obj
-> m T.Text -- result
dOMDatabaseGetVersion _obj = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
result <- webkit_dom_database_get_version _obj'
checkUnexpectedReturnNULL "webkit_dom_database_get_version" result
result' <- cstringToText result
freeMem result
touchManagedPtr _obj
return result'
data DOMDatabaseGetVersionMethodInfo
instance (signature ~ (m T.Text), MonadIO m, DOMDatabaseK a) => MethodInfo DOMDatabaseGetVersionMethodInfo a signature where
overloadedMethod _ = dOMDatabaseGetVersion