module Graphics.UI.Gtk.SourceView.SourceLanguage (
SourceLanguage,
SourceLanguageClass,
castToSourceLanguage,
sourceLanguageGetId,
sourceLanguageGetName,
sourceLanguageGetSection,
sourceLanguageGetHidden,
sourceLanguageGetMetadata,
sourceLanguageGetMimeTypes,
sourceLanguageGetGlobs,
sourceLanguageHidden,
sourceLanguageId,
sourceLanguageName,
sourceLanguageSection
) where
import Control.Monad (liftM)
import Data.Maybe (fromMaybe)
import System.Glib.FFI
import System.Glib.UTFString
import System.Glib.Properties
import System.Glib.Attributes
import Graphics.UI.Gtk.SourceView.Types
import Graphics.UI.Gtk.SourceView.SourceStyleScheme
sourceLanguageGetId :: SourceLanguage -> IO String
sourceLanguageGetId sl =
(\(SourceLanguage arg1) -> withForeignPtr arg1 $ \argPtr1 ->gtk_source_language_get_id argPtr1) sl >>= peekUTFString
sourceLanguageGetName :: SourceLanguage -> IO String
sourceLanguageGetName sl =
(\(SourceLanguage arg1) -> withForeignPtr arg1 $ \argPtr1 ->gtk_source_language_get_name argPtr1) sl >>= peekUTFString
sourceLanguageGetSection :: SourceLanguage -> IO String
sourceLanguageGetSection sl =
(\(SourceLanguage arg1) -> withForeignPtr arg1 $ \argPtr1 ->gtk_source_language_get_section argPtr1) sl >>= peekUTFString
sourceLanguageGetHidden :: SourceLanguage -> IO Bool
sourceLanguageGetHidden sl = liftM toBool $
(\(SourceLanguage arg1) -> withForeignPtr arg1 $ \argPtr1 ->gtk_source_language_get_hidden argPtr1) sl
sourceLanguageGetMetadata :: SourceLanguage -> String -> IO String
sourceLanguageGetMetadata sl name = do
withUTFString name ((\(SourceLanguage arg1) arg2 -> withForeignPtr arg1 $ \argPtr1 ->gtk_source_language_get_metadata argPtr1 arg2) sl) >>= peekUTFString
sourceLanguageGetMimeTypes :: SourceLanguage -> IO [String]
sourceLanguageGetMimeTypes sl = do
mimeTypesArray <- (\(SourceLanguage arg1) -> withForeignPtr arg1 $ \argPtr1 ->gtk_source_language_get_mime_types argPtr1) sl
mimeTypes <- liftM (fromMaybe []) $ maybePeek peekUTFStringArray0 mimeTypesArray
g_strfreev mimeTypesArray
return mimeTypes
sourceLanguageGetGlobs :: SourceLanguage -> IO [String]
sourceLanguageGetGlobs sl = do
globsArray <- (\(SourceLanguage arg1) -> withForeignPtr arg1 $ \argPtr1 ->gtk_source_language_get_globs argPtr1) sl
globs <- liftM (fromMaybe []) $ maybePeek peekUTFStringArray0 globsArray
g_strfreev globsArray
return globs
sourceLanguageHidden :: ReadAttr SourceLanguage Bool
sourceLanguageHidden = readAttrFromBoolProperty "hidden"
sourceLanguageId :: ReadAttr SourceLanguage String
sourceLanguageId = readAttrFromStringProperty "id"
sourceLanguageName :: ReadAttr SourceLanguage String
sourceLanguageName = readAttrFromStringProperty "name"
sourceLanguageSection :: ReadAttr SourceLanguage String
sourceLanguageSection = readAttrFromStringProperty "section"
foreign import ccall unsafe "gtk_source_language_get_id"
gtk_source_language_get_id :: ((Ptr SourceLanguage) -> (IO (Ptr CChar)))
foreign import ccall unsafe "gtk_source_language_get_name"
gtk_source_language_get_name :: ((Ptr SourceLanguage) -> (IO (Ptr CChar)))
foreign import ccall unsafe "gtk_source_language_get_section"
gtk_source_language_get_section :: ((Ptr SourceLanguage) -> (IO (Ptr CChar)))
foreign import ccall unsafe "gtk_source_language_get_hidden"
gtk_source_language_get_hidden :: ((Ptr SourceLanguage) -> (IO CInt))
foreign import ccall unsafe "gtk_source_language_get_metadata"
gtk_source_language_get_metadata :: ((Ptr SourceLanguage) -> ((Ptr CChar) -> (IO (Ptr CChar))))
foreign import ccall unsafe "gtk_source_language_get_mime_types"
gtk_source_language_get_mime_types :: ((Ptr SourceLanguage) -> (IO (Ptr (Ptr CChar))))
foreign import ccall safe "g_strfreev"
g_strfreev :: ((Ptr (Ptr CChar)) -> (IO ()))
foreign import ccall unsafe "gtk_source_language_get_globs"
gtk_source_language_get_globs :: ((Ptr SourceLanguage) -> (IO (Ptr (Ptr CChar))))