gi-gtksource-0.3.18.14: GI/GtkSource/Objects/LanguageManager.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.GtkSource.Objects.LanguageManager
(
-- * Exported types
LanguageManager(..) ,
LanguageManagerK ,
toLanguageManager ,
noLanguageManager ,
-- * Methods
-- ** languageManagerGetDefault
languageManagerGetDefault ,
-- ** languageManagerGetLanguage
LanguageManagerGetLanguageMethodInfo ,
languageManagerGetLanguage ,
-- ** languageManagerGetLanguageIds
LanguageManagerGetLanguageIdsMethodInfo ,
languageManagerGetLanguageIds ,
-- ** languageManagerGetSearchPath
LanguageManagerGetSearchPathMethodInfo ,
languageManagerGetSearchPath ,
-- ** languageManagerGuessLanguage
LanguageManagerGuessLanguageMethodInfo ,
languageManagerGuessLanguage ,
-- ** languageManagerNew
languageManagerNew ,
-- ** languageManagerSetSearchPath
LanguageManagerSetSearchPathMethodInfo ,
languageManagerSetSearchPath ,
-- * Properties
-- ** LanguageIds
LanguageManagerLanguageIdsPropertyInfo ,
getLanguageManagerLanguageIds ,
languageManagerLanguageIds ,
-- ** SearchPath
LanguageManagerSearchPathPropertyInfo ,
clearLanguageManagerSearchPath ,
constructLanguageManagerSearchPath ,
getLanguageManagerSearchPath ,
languageManagerSearchPath ,
setLanguageManagerSearchPath ,
) 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.GtkSource.Types
import GI.GtkSource.Callbacks
import qualified GI.GObject as GObject
newtype LanguageManager = LanguageManager (ForeignPtr LanguageManager)
foreign import ccall "gtk_source_language_manager_get_type"
c_gtk_source_language_manager_get_type :: IO GType
type instance ParentTypes LanguageManager = LanguageManagerParentTypes
type LanguageManagerParentTypes = '[GObject.Object]
instance GObject LanguageManager where
gobjectIsInitiallyUnowned _ = False
gobjectType _ = c_gtk_source_language_manager_get_type
class GObject o => LanguageManagerK o
instance (GObject o, IsDescendantOf LanguageManager o) => LanguageManagerK o
toLanguageManager :: LanguageManagerK o => o -> IO LanguageManager
toLanguageManager = unsafeCastTo LanguageManager
noLanguageManager :: Maybe LanguageManager
noLanguageManager = Nothing
type family ResolveLanguageManagerMethod (t :: Symbol) (o :: *) :: * where
ResolveLanguageManagerMethod "bindProperty" o = GObject.ObjectBindPropertyMethodInfo
ResolveLanguageManagerMethod "bindPropertyFull" o = GObject.ObjectBindPropertyFullMethodInfo
ResolveLanguageManagerMethod "forceFloating" o = GObject.ObjectForceFloatingMethodInfo
ResolveLanguageManagerMethod "freezeNotify" o = GObject.ObjectFreezeNotifyMethodInfo
ResolveLanguageManagerMethod "guessLanguage" o = LanguageManagerGuessLanguageMethodInfo
ResolveLanguageManagerMethod "isFloating" o = GObject.ObjectIsFloatingMethodInfo
ResolveLanguageManagerMethod "notify" o = GObject.ObjectNotifyMethodInfo
ResolveLanguageManagerMethod "notifyByPspec" o = GObject.ObjectNotifyByPspecMethodInfo
ResolveLanguageManagerMethod "ref" o = GObject.ObjectRefMethodInfo
ResolveLanguageManagerMethod "refSink" o = GObject.ObjectRefSinkMethodInfo
ResolveLanguageManagerMethod "replaceData" o = GObject.ObjectReplaceDataMethodInfo
ResolveLanguageManagerMethod "replaceQdata" o = GObject.ObjectReplaceQdataMethodInfo
ResolveLanguageManagerMethod "runDispose" o = GObject.ObjectRunDisposeMethodInfo
ResolveLanguageManagerMethod "stealData" o = GObject.ObjectStealDataMethodInfo
ResolveLanguageManagerMethod "stealQdata" o = GObject.ObjectStealQdataMethodInfo
ResolveLanguageManagerMethod "thawNotify" o = GObject.ObjectThawNotifyMethodInfo
ResolveLanguageManagerMethod "unref" o = GObject.ObjectUnrefMethodInfo
ResolveLanguageManagerMethod "watchClosure" o = GObject.ObjectWatchClosureMethodInfo
ResolveLanguageManagerMethod "getData" o = GObject.ObjectGetDataMethodInfo
ResolveLanguageManagerMethod "getLanguage" o = LanguageManagerGetLanguageMethodInfo
ResolveLanguageManagerMethod "getLanguageIds" o = LanguageManagerGetLanguageIdsMethodInfo
ResolveLanguageManagerMethod "getProperty" o = GObject.ObjectGetPropertyMethodInfo
ResolveLanguageManagerMethod "getQdata" o = GObject.ObjectGetQdataMethodInfo
ResolveLanguageManagerMethod "getSearchPath" o = LanguageManagerGetSearchPathMethodInfo
ResolveLanguageManagerMethod "setData" o = GObject.ObjectSetDataMethodInfo
ResolveLanguageManagerMethod "setProperty" o = GObject.ObjectSetPropertyMethodInfo
ResolveLanguageManagerMethod "setSearchPath" o = LanguageManagerSetSearchPathMethodInfo
ResolveLanguageManagerMethod l o = MethodResolutionFailed l o
instance (info ~ ResolveLanguageManagerMethod t LanguageManager, MethodInfo info LanguageManager p) => IsLabelProxy t (LanguageManager -> p) where
fromLabelProxy _ = overloadedMethod (MethodProxy :: MethodProxy info)
#if MIN_VERSION_base(4,9,0)
instance (info ~ ResolveLanguageManagerMethod t LanguageManager, MethodInfo info LanguageManager p) => IsLabel t (LanguageManager -> p) where
fromLabel _ = overloadedMethod (MethodProxy :: MethodProxy info)
#endif
-- VVV Prop "language-ids"
-- Type: TCArray True (-1) (-1) (TBasicType TUTF8)
-- Flags: [PropertyReadable]
-- Nullable: (Just True,Nothing)
getLanguageManagerLanguageIds :: (MonadIO m, LanguageManagerK o) => o -> m (Maybe [T.Text])
getLanguageManagerLanguageIds obj = liftIO $ getObjectPropertyStringArray obj "language-ids"
data LanguageManagerLanguageIdsPropertyInfo
instance AttrInfo LanguageManagerLanguageIdsPropertyInfo where
type AttrAllowedOps LanguageManagerLanguageIdsPropertyInfo = '[ 'AttrGet, 'AttrClear]
type AttrSetTypeConstraint LanguageManagerLanguageIdsPropertyInfo = (~) ()
type AttrBaseTypeConstraint LanguageManagerLanguageIdsPropertyInfo = LanguageManagerK
type AttrGetType LanguageManagerLanguageIdsPropertyInfo = (Maybe [T.Text])
type AttrLabel LanguageManagerLanguageIdsPropertyInfo = "language-ids"
attrGet _ = getLanguageManagerLanguageIds
attrSet _ = undefined
attrConstruct _ = undefined
attrClear _ = undefined
-- VVV Prop "search-path"
-- Type: TCArray True (-1) (-1) (TBasicType TUTF8)
-- Flags: [PropertyReadable,PropertyWritable]
-- Nullable: (Just False,Just True)
getLanguageManagerSearchPath :: (MonadIO m, LanguageManagerK o) => o -> m [T.Text]
getLanguageManagerSearchPath obj = liftIO $ checkUnexpectedNothing "getLanguageManagerSearchPath" $ getObjectPropertyStringArray obj "search-path"
setLanguageManagerSearchPath :: (MonadIO m, LanguageManagerK o) => o -> [T.Text] -> m ()
setLanguageManagerSearchPath obj val = liftIO $ setObjectPropertyStringArray obj "search-path" (Just val)
constructLanguageManagerSearchPath :: [T.Text] -> IO ([Char], GValue)
constructLanguageManagerSearchPath val = constructObjectPropertyStringArray "search-path" (Just val)
clearLanguageManagerSearchPath :: (MonadIO m, LanguageManagerK o) => o -> m ()
clearLanguageManagerSearchPath obj = liftIO $ setObjectPropertyStringArray obj "search-path" (Nothing :: Maybe [T.Text])
data LanguageManagerSearchPathPropertyInfo
instance AttrInfo LanguageManagerSearchPathPropertyInfo where
type AttrAllowedOps LanguageManagerSearchPathPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet, 'AttrClear]
type AttrSetTypeConstraint LanguageManagerSearchPathPropertyInfo = (~) [T.Text]
type AttrBaseTypeConstraint LanguageManagerSearchPathPropertyInfo = LanguageManagerK
type AttrGetType LanguageManagerSearchPathPropertyInfo = [T.Text]
type AttrLabel LanguageManagerSearchPathPropertyInfo = "search-path"
attrGet _ = getLanguageManagerSearchPath
attrSet _ = setLanguageManagerSearchPath
attrConstruct _ = constructLanguageManagerSearchPath
attrClear _ = clearLanguageManagerSearchPath
type instance AttributeList LanguageManager = LanguageManagerAttributeList
type LanguageManagerAttributeList = ('[ '("languageIds", LanguageManagerLanguageIdsPropertyInfo), '("searchPath", LanguageManagerSearchPathPropertyInfo)] :: [(Symbol, *)])
languageManagerLanguageIds :: AttrLabelProxy "languageIds"
languageManagerLanguageIds = AttrLabelProxy
languageManagerSearchPath :: AttrLabelProxy "searchPath"
languageManagerSearchPath = AttrLabelProxy
type instance SignalList LanguageManager = LanguageManagerSignalList
type LanguageManagerSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo)] :: [(Symbol, *)])
-- method LanguageManager::new
-- method type : Constructor
-- Args : []
-- Lengths : []
-- returnType : Just (TInterface "GtkSource" "LanguageManager")
-- throws : False
-- Skip return : False
foreign import ccall "gtk_source_language_manager_new" gtk_source_language_manager_new ::
IO (Ptr LanguageManager)
languageManagerNew ::
(MonadIO m) =>
m LanguageManager -- result
languageManagerNew = liftIO $ do
result <- gtk_source_language_manager_new
checkUnexpectedReturnNULL "gtk_source_language_manager_new" result
result' <- (wrapObject LanguageManager) result
return result'
-- method LanguageManager::get_language
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "_obj", argType = TInterface "GtkSource" "LanguageManager", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "id", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : Just (TInterface "GtkSource" "Language")
-- throws : False
-- Skip return : False
foreign import ccall "gtk_source_language_manager_get_language" gtk_source_language_manager_get_language ::
Ptr LanguageManager -> -- _obj : TInterface "GtkSource" "LanguageManager"
CString -> -- id : TBasicType TUTF8
IO (Ptr Language)
languageManagerGetLanguage ::
(MonadIO m, LanguageManagerK a) =>
a -- _obj
-> T.Text -- id
-> m (Maybe Language) -- result
languageManagerGetLanguage _obj id = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
id' <- textToCString id
result <- gtk_source_language_manager_get_language _obj' id'
maybeResult <- convertIfNonNull result $ \result' -> do
result'' <- (newObject Language) result'
return result''
touchManagedPtr _obj
freeMem id'
return maybeResult
data LanguageManagerGetLanguageMethodInfo
instance (signature ~ (T.Text -> m (Maybe Language)), MonadIO m, LanguageManagerK a) => MethodInfo LanguageManagerGetLanguageMethodInfo a signature where
overloadedMethod _ = languageManagerGetLanguage
-- method LanguageManager::get_language_ids
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "_obj", argType = TInterface "GtkSource" "LanguageManager", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : Just (TCArray True (-1) (-1) (TBasicType TUTF8))
-- throws : False
-- Skip return : False
foreign import ccall "gtk_source_language_manager_get_language_ids" gtk_source_language_manager_get_language_ids ::
Ptr LanguageManager -> -- _obj : TInterface "GtkSource" "LanguageManager"
IO (Ptr CString)
languageManagerGetLanguageIds ::
(MonadIO m, LanguageManagerK a) =>
a -- _obj
-> m (Maybe [T.Text]) -- result
languageManagerGetLanguageIds _obj = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
result <- gtk_source_language_manager_get_language_ids _obj'
maybeResult <- convertIfNonNull result $ \result' -> do
result'' <- unpackZeroTerminatedUTF8CArray result'
return result''
touchManagedPtr _obj
return maybeResult
data LanguageManagerGetLanguageIdsMethodInfo
instance (signature ~ (m (Maybe [T.Text])), MonadIO m, LanguageManagerK a) => MethodInfo LanguageManagerGetLanguageIdsMethodInfo a signature where
overloadedMethod _ = languageManagerGetLanguageIds
-- method LanguageManager::get_search_path
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "_obj", argType = TInterface "GtkSource" "LanguageManager", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : Just (TCArray True (-1) (-1) (TBasicType TUTF8))
-- throws : False
-- Skip return : False
foreign import ccall "gtk_source_language_manager_get_search_path" gtk_source_language_manager_get_search_path ::
Ptr LanguageManager -> -- _obj : TInterface "GtkSource" "LanguageManager"
IO (Ptr CString)
languageManagerGetSearchPath ::
(MonadIO m, LanguageManagerK a) =>
a -- _obj
-> m [T.Text] -- result
languageManagerGetSearchPath _obj = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
result <- gtk_source_language_manager_get_search_path _obj'
checkUnexpectedReturnNULL "gtk_source_language_manager_get_search_path" result
result' <- unpackZeroTerminatedUTF8CArray result
touchManagedPtr _obj
return result'
data LanguageManagerGetSearchPathMethodInfo
instance (signature ~ (m [T.Text]), MonadIO m, LanguageManagerK a) => MethodInfo LanguageManagerGetSearchPathMethodInfo a signature where
overloadedMethod _ = languageManagerGetSearchPath
-- method LanguageManager::guess_language
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "_obj", argType = TInterface "GtkSource" "LanguageManager", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "filename", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "content_type", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : Just (TInterface "GtkSource" "Language")
-- throws : False
-- Skip return : False
foreign import ccall "gtk_source_language_manager_guess_language" gtk_source_language_manager_guess_language ::
Ptr LanguageManager -> -- _obj : TInterface "GtkSource" "LanguageManager"
CString -> -- filename : TBasicType TUTF8
CString -> -- content_type : TBasicType TUTF8
IO (Ptr Language)
languageManagerGuessLanguage ::
(MonadIO m, LanguageManagerK a) =>
a -- _obj
-> Maybe (T.Text) -- filename
-> Maybe (T.Text) -- contentType
-> m (Maybe Language) -- result
languageManagerGuessLanguage _obj filename contentType = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
maybeFilename <- case filename of
Nothing -> return nullPtr
Just jFilename -> do
jFilename' <- textToCString jFilename
return jFilename'
maybeContentType <- case contentType of
Nothing -> return nullPtr
Just jContentType -> do
jContentType' <- textToCString jContentType
return jContentType'
result <- gtk_source_language_manager_guess_language _obj' maybeFilename maybeContentType
maybeResult <- convertIfNonNull result $ \result' -> do
result'' <- (newObject Language) result'
return result''
touchManagedPtr _obj
freeMem maybeFilename
freeMem maybeContentType
return maybeResult
data LanguageManagerGuessLanguageMethodInfo
instance (signature ~ (Maybe (T.Text) -> Maybe (T.Text) -> m (Maybe Language)), MonadIO m, LanguageManagerK a) => MethodInfo LanguageManagerGuessLanguageMethodInfo a signature where
overloadedMethod _ = languageManagerGuessLanguage
-- method LanguageManager::set_search_path
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "_obj", argType = TInterface "GtkSource" "LanguageManager", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "dirs", argType = TCArray True (-1) (-1) (TBasicType TUTF8), direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : Nothing
-- throws : False
-- Skip return : False
foreign import ccall "gtk_source_language_manager_set_search_path" gtk_source_language_manager_set_search_path ::
Ptr LanguageManager -> -- _obj : TInterface "GtkSource" "LanguageManager"
Ptr CString -> -- dirs : TCArray True (-1) (-1) (TBasicType TUTF8)
IO ()
languageManagerSetSearchPath ::
(MonadIO m, LanguageManagerK a) =>
a -- _obj
-> Maybe ([T.Text]) -- dirs
-> m () -- result
languageManagerSetSearchPath _obj dirs = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
maybeDirs <- case dirs of
Nothing -> return nullPtr
Just jDirs -> do
jDirs' <- packZeroTerminatedUTF8CArray jDirs
return jDirs'
gtk_source_language_manager_set_search_path _obj' maybeDirs
touchManagedPtr _obj
mapZeroTerminatedCArray freeMem maybeDirs
freeMem maybeDirs
return ()
data LanguageManagerSetSearchPathMethodInfo
instance (signature ~ (Maybe ([T.Text]) -> m ()), MonadIO m, LanguageManagerK a) => MethodInfo LanguageManagerSetSearchPathMethodInfo a signature where
overloadedMethod _ = languageManagerSetSearchPath
-- method LanguageManager::get_default
-- method type : MemberFunction
-- Args : []
-- Lengths : []
-- returnType : Just (TInterface "GtkSource" "LanguageManager")
-- throws : False
-- Skip return : False
foreign import ccall "gtk_source_language_manager_get_default" gtk_source_language_manager_get_default ::
IO (Ptr LanguageManager)
languageManagerGetDefault ::
(MonadIO m) =>
m LanguageManager -- result
languageManagerGetDefault = liftIO $ do
result <- gtk_source_language_manager_get_default
checkUnexpectedReturnNULL "gtk_source_language_manager_get_default" result
result' <- (newObject LanguageManager) result
return result'