{-# LINE 2 "./Graphics/UI/Gtk/Recent/RecentInfo.chs" #-}
module Graphics.UI.Gtk.Recent.RecentInfo (
RecentInfo,
mkRecentInfo,
recentInfoExists,
recentInfoGetAdded,
recentInfoGetAge,
recentInfoGetApplicationInfo,
recentInfoGetApplications,
recentInfoGetDescription,
recentInfoGetDisplayName,
recentInfoGetGroups,
recentInfoGetIcon,
recentInfoGetMimeType,
recentInfoGetModified,
recentInfoGetPrivateHint,
recentInfoGetShortName,
recentInfoGetURI,
recentInfoGetURIDisplay,
recentInfoGetVisited,
recentInfoHasApplication,
recentInfoHasGroup,
recentInfoIsLocal,
recentInfoLastApplication,
recentInfoMatch,
) where
import Control.Monad (liftM)
import System.Glib.FFI
import System.Glib.UTFString
import Graphics.UI.Gtk.Types
{-# LINE 66 "./Graphics/UI/Gtk/Recent/RecentInfo.chs" #-}
{-# LINE 68 "./Graphics/UI/Gtk/Recent/RecentInfo.chs" #-}
newtype RecentInfo = RecentInfo (ForeignPtr (RecentInfo))
{-# LINE 72 "./Graphics/UI/Gtk/Recent/RecentInfo.chs" #-}
mkRecentInfo :: Ptr RecentInfo -> IO RecentInfo
mkRecentInfo :: Ptr RecentInfo -> IO RecentInfo
mkRecentInfo Ptr RecentInfo
rPtr = do
ForeignPtr RecentInfo
info <- Ptr RecentInfo
-> FinalizerPtr RecentInfo -> IO (ForeignPtr RecentInfo)
forall a. Ptr a -> FinalizerPtr a -> IO (ForeignPtr a)
newForeignPtr Ptr RecentInfo
rPtr FinalizerPtr RecentInfo
gtk_recent_info_unref
RecentInfo -> IO RecentInfo
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return (ForeignPtr RecentInfo -> RecentInfo
RecentInfo ForeignPtr RecentInfo
info)
foreign import ccall unsafe ">k_recent_info_unref"
gtk_recent_info_unref :: FinalizerPtr RecentInfo
recentInfoExists :: RecentInfo
-> IO Bool
recentInfoExists :: RecentInfo -> IO Bool
recentInfoExists RecentInfo
self =
(CInt -> Bool) -> IO CInt -> IO Bool
forall (m :: * -> *) a1 r. Monad m => (a1 -> r) -> m a1 -> m r
liftM CInt -> Bool
forall a. (Eq a, Num a) => a -> Bool
toBool (IO CInt -> IO Bool) -> IO CInt -> IO Bool
forall a b. (a -> b) -> a -> b
$
(\(RecentInfo ForeignPtr RecentInfo
arg1) -> ForeignPtr RecentInfo -> (Ptr RecentInfo -> IO CInt) -> IO CInt
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr RecentInfo
arg1 ((Ptr RecentInfo -> IO CInt) -> IO CInt)
-> (Ptr RecentInfo -> IO CInt) -> IO CInt
forall a b. (a -> b) -> a -> b
$ \Ptr RecentInfo
argPtr1 ->Ptr RecentInfo -> IO CInt
gtk_recent_info_exists Ptr RecentInfo
argPtr1)
{-# LINE 95 "./Graphics/UI/Gtk/Recent/RecentInfo.chs" #-}
self
recentInfoGetAdded :: RecentInfo
-> IO Int
recentInfoGetAdded :: RecentInfo -> IO Int
recentInfoGetAdded RecentInfo
self =
(CLong -> Int) -> IO CLong -> IO Int
forall (m :: * -> *) a1 r. Monad m => (a1 -> r) -> m a1 -> m r
liftM CLong -> Int
forall a b. (Integral a, Num b) => a -> b
fromIntegral (IO CLong -> IO Int) -> IO CLong -> IO Int
forall a b. (a -> b) -> a -> b
$
(\(RecentInfo ForeignPtr RecentInfo
arg1) -> ForeignPtr RecentInfo -> (Ptr RecentInfo -> IO CLong) -> IO CLong
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr RecentInfo
arg1 ((Ptr RecentInfo -> IO CLong) -> IO CLong)
-> (Ptr RecentInfo -> IO CLong) -> IO CLong
forall a b. (a -> b) -> a -> b
$ \Ptr RecentInfo
argPtr1 ->Ptr RecentInfo -> IO CLong
gtk_recent_info_get_added Ptr RecentInfo
argPtr1)
{-# LINE 107 "./Graphics/UI/Gtk/Recent/RecentInfo.chs" #-}
self
recentInfoGetAge :: RecentInfo
-> IO Int
recentInfoGetAge :: RecentInfo -> IO Int
recentInfoGetAge RecentInfo
self =
(CInt -> Int) -> IO CInt -> IO Int
forall (m :: * -> *) a1 r. Monad m => (a1 -> r) -> m a1 -> m r
liftM CInt -> Int
forall a b. (Integral a, Num b) => a -> b
fromIntegral (IO CInt -> IO Int) -> IO CInt -> IO Int
forall a b. (a -> b) -> a -> b
$
(\(RecentInfo ForeignPtr RecentInfo
arg1) -> ForeignPtr RecentInfo -> (Ptr RecentInfo -> IO CInt) -> IO CInt
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr RecentInfo
arg1 ((Ptr RecentInfo -> IO CInt) -> IO CInt)
-> (Ptr RecentInfo -> IO CInt) -> IO CInt
forall a b. (a -> b) -> a -> b
$ \Ptr RecentInfo
argPtr1 ->Ptr RecentInfo -> IO CInt
gtk_recent_info_get_age Ptr RecentInfo
argPtr1)
{-# LINE 118 "./Graphics/UI/Gtk/Recent/RecentInfo.chs" #-}
self
recentInfoGetApplicationInfo :: GlibString string => RecentInfo
-> string
-> IO (Maybe ([string], Int, Int))
recentInfoGetApplicationInfo :: forall string.
GlibString string =>
RecentInfo -> string -> IO (Maybe ([string], Int, Int))
recentInfoGetApplicationInfo RecentInfo
self string
appName =
(Ptr CUInt -> IO (Maybe ([string], Int, Int)))
-> IO (Maybe ([string], Int, Int))
forall a b. Storable a => (Ptr a -> IO b) -> IO b
alloca ((Ptr CUInt -> IO (Maybe ([string], Int, Int)))
-> IO (Maybe ([string], Int, Int)))
-> (Ptr CUInt -> IO (Maybe ([string], Int, Int)))
-> IO (Maybe ([string], Int, Int))
forall a b. (a -> b) -> a -> b
$ \Ptr CUInt
countPtr ->
(Ptr CLong -> IO (Maybe ([string], Int, Int)))
-> IO (Maybe ([string], Int, Int))
forall a b. Storable a => (Ptr a -> IO b) -> IO b
alloca ((Ptr CLong -> IO (Maybe ([string], Int, Int)))
-> IO (Maybe ([string], Int, Int)))
-> (Ptr CLong -> IO (Maybe ([string], Int, Int)))
-> IO (Maybe ([string], Int, Int))
forall a b. (a -> b) -> a -> b
$ \Ptr CLong
timePtr ->
Int
-> (Ptr (Ptr CChar) -> IO (Maybe ([string], Int, Int)))
-> IO (Maybe ([string], Int, Int))
forall a b. Storable a => Int -> (Ptr a -> IO b) -> IO b
allocaArray Int
0 ((Ptr (Ptr CChar) -> IO (Maybe ([string], Int, Int)))
-> IO (Maybe ([string], Int, Int)))
-> (Ptr (Ptr CChar) -> IO (Maybe ([string], Int, Int)))
-> IO (Maybe ([string], Int, Int))
forall a b. (a -> b) -> a -> b
$ \Ptr (Ptr CChar)
execPtr ->
string
-> (Ptr CChar -> IO (Maybe ([string], Int, Int)))
-> IO (Maybe ([string], Int, Int))
forall a. string -> (Ptr CChar -> IO a) -> IO a
forall s a. GlibString s => s -> (Ptr CChar -> IO a) -> IO a
withUTFString string
appName ((Ptr CChar -> IO (Maybe ([string], Int, Int)))
-> IO (Maybe ([string], Int, Int)))
-> (Ptr CChar -> IO (Maybe ([string], Int, Int)))
-> IO (Maybe ([string], Int, Int))
forall a b. (a -> b) -> a -> b
$ \Ptr CChar
appNamePtr -> do
Bool
success <- (CInt -> Bool) -> IO CInt -> IO Bool
forall (m :: * -> *) a1 r. Monad m => (a1 -> r) -> m a1 -> m r
liftM CInt -> Bool
forall a. (Eq a, Num a) => a -> Bool
toBool (IO CInt -> IO Bool) -> IO CInt -> IO Bool
forall a b. (a -> b) -> a -> b
$
(\(RecentInfo ForeignPtr RecentInfo
arg1) Ptr CChar
arg2 Ptr (Ptr CChar)
arg3 Ptr CUInt
arg4 Ptr CLong
arg5 -> ForeignPtr RecentInfo -> (Ptr RecentInfo -> IO CInt) -> IO CInt
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr RecentInfo
arg1 ((Ptr RecentInfo -> IO CInt) -> IO CInt)
-> (Ptr RecentInfo -> IO CInt) -> IO CInt
forall a b. (a -> b) -> a -> b
$ \Ptr RecentInfo
argPtr1 ->Ptr RecentInfo
-> Ptr CChar
-> Ptr (Ptr CChar)
-> Ptr CUInt
-> Ptr CLong
-> IO CInt
gtk_recent_info_get_application_info Ptr RecentInfo
argPtr1 Ptr CChar
arg2 Ptr (Ptr CChar)
arg3 Ptr CUInt
arg4 Ptr CLong
arg5)
{-# LINE 140 "./Graphics/UI/Gtk/Recent/RecentInfo.chs" #-}
RecentInfo
self
Ptr CChar
appNamePtr
Ptr (Ptr CChar)
execPtr
Ptr CUInt
countPtr
Ptr CLong
timePtr
if Bool
success
then do
[string]
exec <- (Ptr CChar -> IO string) -> [Ptr CChar] -> IO [string]
forall (t :: * -> *) (m :: * -> *) a b.
(Traversable t, Monad m) =>
(a -> m b) -> t a -> m (t b)
forall (m :: * -> *) a b. Monad m => (a -> m b) -> [a] -> m [b]
mapM Ptr CChar -> IO string
forall s. GlibString s => Ptr CChar -> IO s
peekUTFString ([Ptr CChar] -> IO [string]) -> IO [Ptr CChar] -> IO [string]
forall (m :: * -> *) a b. Monad m => (a -> m b) -> m a -> m b
=<< Int -> Ptr (Ptr CChar) -> IO [Ptr CChar]
forall a. Storable a => Int -> Ptr a -> IO [a]
peekArray Int
0 Ptr (Ptr CChar)
execPtr
CUInt
count <- Ptr CUInt -> IO CUInt
forall a. Storable a => Ptr a -> IO a
peek Ptr CUInt
countPtr
CLong
time <- Ptr CLong -> IO CLong
forall a. Storable a => Ptr a -> IO a
peek Ptr CLong
timePtr
Maybe ([string], Int, Int) -> IO (Maybe ([string], Int, Int))
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return (([string], Int, Int) -> Maybe ([string], Int, Int)
forall a. a -> Maybe a
Just ([string]
exec, CUInt -> Int
forall a b. (Integral a, Num b) => a -> b
fromIntegral CUInt
count, CLong -> Int
forall a b. (Integral a, Num b) => a -> b
fromIntegral CLong
time))
else Maybe ([string], Int, Int) -> IO (Maybe ([string], Int, Int))
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Maybe ([string], Int, Int)
forall a. Maybe a
Nothing
recentInfoGetApplications :: GlibString string => RecentInfo -> IO [string]
recentInfoGetApplications :: forall string. GlibString string => RecentInfo -> IO [string]
recentInfoGetApplications RecentInfo
self =
(Ptr CUInt -> IO [string]) -> IO [string]
forall a b. Storable a => (Ptr a -> IO b) -> IO b
alloca ((Ptr CUInt -> IO [string]) -> IO [string])
-> (Ptr CUInt -> IO [string]) -> IO [string]
forall a b. (a -> b) -> a -> b
$ \Ptr CUInt
lengthPtr -> do
Ptr (Ptr CChar)
str <- (\(RecentInfo ForeignPtr RecentInfo
arg1) Ptr CUInt
arg2 -> ForeignPtr RecentInfo
-> (Ptr RecentInfo -> IO (Ptr (Ptr CChar))) -> IO (Ptr (Ptr CChar))
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr RecentInfo
arg1 ((Ptr RecentInfo -> IO (Ptr (Ptr CChar))) -> IO (Ptr (Ptr CChar)))
-> (Ptr RecentInfo -> IO (Ptr (Ptr CChar))) -> IO (Ptr (Ptr CChar))
forall a b. (a -> b) -> a -> b
$ \Ptr RecentInfo
argPtr1 ->Ptr RecentInfo -> Ptr CUInt -> IO (Ptr (Ptr CChar))
gtk_recent_info_get_applications Ptr RecentInfo
argPtr1 Ptr CUInt
arg2) RecentInfo
self Ptr CUInt
lengthPtr
CUInt
length <- Ptr CUInt -> IO CUInt
forall a. Storable a => Ptr a -> IO a
peek Ptr CUInt
lengthPtr
(Ptr CChar -> IO string) -> [Ptr CChar] -> IO [string]
forall (t :: * -> *) (m :: * -> *) a b.
(Traversable t, Monad m) =>
(a -> m b) -> t a -> m (t b)
forall (m :: * -> *) a b. Monad m => (a -> m b) -> [a] -> m [b]
mapM Ptr CChar -> IO string
forall s. GlibString s => Ptr CChar -> IO s
peekUTFString ([Ptr CChar] -> IO [string]) -> IO [Ptr CChar] -> IO [string]
forall (m :: * -> *) a b. Monad m => (a -> m b) -> m a -> m b
=<< Int -> Ptr (Ptr CChar) -> IO [Ptr CChar]
forall a. Storable a => Int -> Ptr a -> IO [a]
peekArray (CUInt -> Int
forall a b. (Integral a, Num b) => a -> b
fromIntegral CUInt
length) Ptr (Ptr CChar)
str
recentInfoGetDescription :: GlibString string => RecentInfo
-> IO string
recentInfoGetDescription :: forall string. GlibString string => RecentInfo -> IO string
recentInfoGetDescription RecentInfo
self =
(\(RecentInfo ForeignPtr RecentInfo
arg1) -> ForeignPtr RecentInfo
-> (Ptr RecentInfo -> IO (Ptr CChar)) -> IO (Ptr CChar)
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr RecentInfo
arg1 ((Ptr RecentInfo -> IO (Ptr CChar)) -> IO (Ptr CChar))
-> (Ptr RecentInfo -> IO (Ptr CChar)) -> IO (Ptr CChar)
forall a b. (a -> b) -> a -> b
$ \Ptr RecentInfo
argPtr1 ->Ptr RecentInfo -> IO (Ptr CChar)
gtk_recent_info_get_description Ptr RecentInfo
argPtr1)
{-# LINE 172 "./Graphics/UI/Gtk/Recent/RecentInfo.chs" #-}
self
IO (Ptr CChar) -> (Ptr CChar -> IO string) -> IO string
forall a b. IO a -> (a -> IO b) -> IO b
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= Ptr CChar -> IO string
forall s. GlibString s => Ptr CChar -> IO s
peekUTFString
recentInfoGetDisplayName :: GlibString string => RecentInfo
-> IO string
recentInfoGetDisplayName :: forall string. GlibString string => RecentInfo -> IO string
recentInfoGetDisplayName RecentInfo
self =
(\(RecentInfo ForeignPtr RecentInfo
arg1) -> ForeignPtr RecentInfo
-> (Ptr RecentInfo -> IO (Ptr CChar)) -> IO (Ptr CChar)
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr RecentInfo
arg1 ((Ptr RecentInfo -> IO (Ptr CChar)) -> IO (Ptr CChar))
-> (Ptr RecentInfo -> IO (Ptr CChar)) -> IO (Ptr CChar)
forall a b. (a -> b) -> a -> b
$ \Ptr RecentInfo
argPtr1 ->Ptr RecentInfo -> IO (Ptr CChar)
gtk_recent_info_get_display_name Ptr RecentInfo
argPtr1)
{-# LINE 183 "./Graphics/UI/Gtk/Recent/RecentInfo.chs" #-}
self
IO (Ptr CChar) -> (Ptr CChar -> IO string) -> IO string
forall a b. IO a -> (a -> IO b) -> IO b
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= Ptr CChar -> IO string
forall s. GlibString s => Ptr CChar -> IO s
peekUTFString
recentInfoGetGroups :: GlibString string => RecentInfo -> IO [string]
recentInfoGetGroups :: forall string. GlibString string => RecentInfo -> IO [string]
recentInfoGetGroups RecentInfo
self =
(Ptr CUInt -> IO [string]) -> IO [string]
forall a b. Storable a => (Ptr a -> IO b) -> IO b
alloca ((Ptr CUInt -> IO [string]) -> IO [string])
-> (Ptr CUInt -> IO [string]) -> IO [string]
forall a b. (a -> b) -> a -> b
$ \Ptr CUInt
lengthPtr -> do
Ptr (Ptr CChar)
str <- (\(RecentInfo ForeignPtr RecentInfo
arg1) Ptr CUInt
arg2 -> ForeignPtr RecentInfo
-> (Ptr RecentInfo -> IO (Ptr (Ptr CChar))) -> IO (Ptr (Ptr CChar))
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr RecentInfo
arg1 ((Ptr RecentInfo -> IO (Ptr (Ptr CChar))) -> IO (Ptr (Ptr CChar)))
-> (Ptr RecentInfo -> IO (Ptr (Ptr CChar))) -> IO (Ptr (Ptr CChar))
forall a b. (a -> b) -> a -> b
$ \Ptr RecentInfo
argPtr1 ->Ptr RecentInfo -> Ptr CUInt -> IO (Ptr (Ptr CChar))
gtk_recent_info_get_groups Ptr RecentInfo
argPtr1 Ptr CUInt
arg2) RecentInfo
self Ptr CUInt
lengthPtr
CUInt
length <- Ptr CUInt -> IO CUInt
forall a. Storable a => Ptr a -> IO a
peek Ptr CUInt
lengthPtr
(Ptr CChar -> IO string) -> [Ptr CChar] -> IO [string]
forall (t :: * -> *) (m :: * -> *) a b.
(Traversable t, Monad m) =>
(a -> m b) -> t a -> m (t b)
forall (m :: * -> *) a b. Monad m => (a -> m b) -> [a] -> m [b]
mapM Ptr CChar -> IO string
forall s. GlibString s => Ptr CChar -> IO s
peekUTFString ([Ptr CChar] -> IO [string]) -> IO [Ptr CChar] -> IO [string]
forall (m :: * -> *) a b. Monad m => (a -> m b) -> m a -> m b
=<< Int -> Ptr (Ptr CChar) -> IO [Ptr CChar]
forall a. Storable a => Int -> Ptr a -> IO [a]
peekArray (CUInt -> Int
forall a b. (Integral a, Num b) => a -> b
fromIntegral CUInt
length) Ptr (Ptr CChar)
str
recentInfoGetIcon :: RecentInfo
-> Int
-> IO (Maybe Pixbuf)
recentInfoGetIcon :: RecentInfo -> Int -> IO (Maybe Pixbuf)
recentInfoGetIcon RecentInfo
self Int
size =
(IO (Ptr Pixbuf) -> IO Pixbuf)
-> IO (Ptr Pixbuf) -> IO (Maybe Pixbuf)
forall a. (IO (Ptr a) -> IO a) -> IO (Ptr a) -> IO (Maybe a)
maybeNull ((ForeignPtr Pixbuf -> Pixbuf, FinalizerPtr Pixbuf)
-> IO (Ptr Pixbuf) -> IO Pixbuf
forall obj.
GObjectClass obj =>
(ForeignPtr obj -> obj, FinalizerPtr obj) -> IO (Ptr obj) -> IO obj
makeNewGObject (ForeignPtr Pixbuf -> Pixbuf, FinalizerPtr Pixbuf)
forall {a}. (ForeignPtr Pixbuf -> Pixbuf, FinalizerPtr a)
mkPixbuf) (IO (Ptr Pixbuf) -> IO (Maybe Pixbuf))
-> IO (Ptr Pixbuf) -> IO (Maybe Pixbuf)
forall a b. (a -> b) -> a -> b
$
(\(RecentInfo ForeignPtr RecentInfo
arg1) CInt
arg2 -> ForeignPtr RecentInfo
-> (Ptr RecentInfo -> IO (Ptr Pixbuf)) -> IO (Ptr Pixbuf)
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr RecentInfo
arg1 ((Ptr RecentInfo -> IO (Ptr Pixbuf)) -> IO (Ptr Pixbuf))
-> (Ptr RecentInfo -> IO (Ptr Pixbuf)) -> IO (Ptr Pixbuf)
forall a b. (a -> b) -> a -> b
$ \Ptr RecentInfo
argPtr1 ->Ptr RecentInfo -> CInt -> IO (Ptr Pixbuf)
gtk_recent_info_get_icon Ptr RecentInfo
argPtr1 CInt
arg2)
{-# LINE 207 "./Graphics/UI/Gtk/Recent/RecentInfo.chs" #-}
self
(Int -> CInt
forall a b. (Integral a, Num b) => a -> b
fromIntegral Int
size)
recentInfoGetMimeType :: GlibString string => RecentInfo
-> IO string
recentInfoGetMimeType :: forall string. GlibString string => RecentInfo -> IO string
recentInfoGetMimeType RecentInfo
self =
(\(RecentInfo ForeignPtr RecentInfo
arg1) -> ForeignPtr RecentInfo
-> (Ptr RecentInfo -> IO (Ptr CChar)) -> IO (Ptr CChar)
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr RecentInfo
arg1 ((Ptr RecentInfo -> IO (Ptr CChar)) -> IO (Ptr CChar))
-> (Ptr RecentInfo -> IO (Ptr CChar)) -> IO (Ptr CChar)
forall a b. (a -> b) -> a -> b
$ \Ptr RecentInfo
argPtr1 ->Ptr RecentInfo -> IO (Ptr CChar)
gtk_recent_info_get_mime_type Ptr RecentInfo
argPtr1)
{-# LINE 218 "./Graphics/UI/Gtk/Recent/RecentInfo.chs" #-}
self
IO (Ptr CChar) -> (Ptr CChar -> IO string) -> IO string
forall a b. IO a -> (a -> IO b) -> IO b
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= Ptr CChar -> IO string
forall s. GlibString s => Ptr CChar -> IO s
peekUTFString
recentInfoGetModified :: RecentInfo
-> IO Int
recentInfoGetModified :: RecentInfo -> IO Int
recentInfoGetModified RecentInfo
self =
(CLong -> Int) -> IO CLong -> IO Int
forall (m :: * -> *) a1 r. Monad m => (a1 -> r) -> m a1 -> m r
liftM CLong -> Int
forall a b. (Integral a, Num b) => a -> b
fromIntegral (IO CLong -> IO Int) -> IO CLong -> IO Int
forall a b. (a -> b) -> a -> b
$
(\(RecentInfo ForeignPtr RecentInfo
arg1) -> ForeignPtr RecentInfo -> (Ptr RecentInfo -> IO CLong) -> IO CLong
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr RecentInfo
arg1 ((Ptr RecentInfo -> IO CLong) -> IO CLong)
-> (Ptr RecentInfo -> IO CLong) -> IO CLong
forall a b. (a -> b) -> a -> b
$ \Ptr RecentInfo
argPtr1 ->Ptr RecentInfo -> IO CLong
gtk_recent_info_get_modified Ptr RecentInfo
argPtr1)
{-# LINE 230 "./Graphics/UI/Gtk/Recent/RecentInfo.chs" #-}
self
recentInfoGetPrivateHint :: RecentInfo
-> IO Bool
recentInfoGetPrivateHint :: RecentInfo -> IO Bool
recentInfoGetPrivateHint RecentInfo
self =
(CInt -> Bool) -> IO CInt -> IO Bool
forall (m :: * -> *) a1 r. Monad m => (a1 -> r) -> m a1 -> m r
liftM CInt -> Bool
forall a. (Eq a, Num a) => a -> Bool
toBool (IO CInt -> IO Bool) -> IO CInt -> IO Bool
forall a b. (a -> b) -> a -> b
$
(\(RecentInfo ForeignPtr RecentInfo
arg1) -> ForeignPtr RecentInfo -> (Ptr RecentInfo -> IO CInt) -> IO CInt
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr RecentInfo
arg1 ((Ptr RecentInfo -> IO CInt) -> IO CInt)
-> (Ptr RecentInfo -> IO CInt) -> IO CInt
forall a b. (a -> b) -> a -> b
$ \Ptr RecentInfo
argPtr1 ->Ptr RecentInfo -> IO CInt
gtk_recent_info_get_private_hint Ptr RecentInfo
argPtr1)
{-# LINE 242 "./Graphics/UI/Gtk/Recent/RecentInfo.chs" #-}
self
recentInfoGetShortName :: GlibString string => RecentInfo
-> IO string
recentInfoGetShortName :: forall string. GlibString string => RecentInfo -> IO string
recentInfoGetShortName RecentInfo
self =
(\(RecentInfo ForeignPtr RecentInfo
arg1) -> ForeignPtr RecentInfo
-> (Ptr RecentInfo -> IO (Ptr CChar)) -> IO (Ptr CChar)
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr RecentInfo
arg1 ((Ptr RecentInfo -> IO (Ptr CChar)) -> IO (Ptr CChar))
-> (Ptr RecentInfo -> IO (Ptr CChar)) -> IO (Ptr CChar)
forall a b. (a -> b) -> a -> b
$ \Ptr RecentInfo
argPtr1 ->Ptr RecentInfo -> IO (Ptr CChar)
gtk_recent_info_get_short_name Ptr RecentInfo
argPtr1)
{-# LINE 253 "./Graphics/UI/Gtk/Recent/RecentInfo.chs" #-}
self
IO (Ptr CChar) -> (Ptr CChar -> IO string) -> IO string
forall a b. IO a -> (a -> IO b) -> IO b
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= Ptr CChar -> IO string
forall s. GlibString s => Ptr CChar -> IO s
readUTFString
recentInfoGetURI :: GlibString string => RecentInfo
-> IO string
recentInfoGetURI :: forall string. GlibString string => RecentInfo -> IO string
recentInfoGetURI RecentInfo
self =
(\(RecentInfo ForeignPtr RecentInfo
arg1) -> ForeignPtr RecentInfo
-> (Ptr RecentInfo -> IO (Ptr CChar)) -> IO (Ptr CChar)
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr RecentInfo
arg1 ((Ptr RecentInfo -> IO (Ptr CChar)) -> IO (Ptr CChar))
-> (Ptr RecentInfo -> IO (Ptr CChar)) -> IO (Ptr CChar)
forall a b. (a -> b) -> a -> b
$ \Ptr RecentInfo
argPtr1 ->Ptr RecentInfo -> IO (Ptr CChar)
gtk_recent_info_get_uri Ptr RecentInfo
argPtr1)
{-# LINE 264 "./Graphics/UI/Gtk/Recent/RecentInfo.chs" #-}
self
IO (Ptr CChar) -> (Ptr CChar -> IO string) -> IO string
forall a b. IO a -> (a -> IO b) -> IO b
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= Ptr CChar -> IO string
forall s. GlibString s => Ptr CChar -> IO s
peekUTFString
recentInfoGetURIDisplay :: GlibString string => RecentInfo -> IO string
recentInfoGetURIDisplay :: forall string. GlibString string => RecentInfo -> IO string
recentInfoGetURIDisplay RecentInfo
self =
(\(RecentInfo ForeignPtr RecentInfo
arg1) -> ForeignPtr RecentInfo
-> (Ptr RecentInfo -> IO (Ptr CChar)) -> IO (Ptr CChar)
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr RecentInfo
arg1 ((Ptr RecentInfo -> IO (Ptr CChar)) -> IO (Ptr CChar))
-> (Ptr RecentInfo -> IO (Ptr CChar)) -> IO (Ptr CChar)
forall a b. (a -> b) -> a -> b
$ \Ptr RecentInfo
argPtr1 ->Ptr RecentInfo -> IO (Ptr CChar)
gtk_recent_info_get_uri_display Ptr RecentInfo
argPtr1)
{-# LINE 275 "./Graphics/UI/Gtk/Recent/RecentInfo.chs" #-}
self
IO (Ptr CChar) -> (Ptr CChar -> IO string) -> IO string
forall a b. IO a -> (a -> IO b) -> IO b
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= Ptr CChar -> IO string
forall s. GlibString s => Ptr CChar -> IO s
readUTFString
recentInfoGetVisited :: RecentInfo
-> IO Int
recentInfoGetVisited :: RecentInfo -> IO Int
recentInfoGetVisited RecentInfo
self =
(CLong -> Int) -> IO CLong -> IO Int
forall (m :: * -> *) a1 r. Monad m => (a1 -> r) -> m a1 -> m r
liftM CLong -> Int
forall a b. (Integral a, Num b) => a -> b
fromIntegral (IO CLong -> IO Int) -> IO CLong -> IO Int
forall a b. (a -> b) -> a -> b
$
(\(RecentInfo ForeignPtr RecentInfo
arg1) -> ForeignPtr RecentInfo -> (Ptr RecentInfo -> IO CLong) -> IO CLong
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr RecentInfo
arg1 ((Ptr RecentInfo -> IO CLong) -> IO CLong)
-> (Ptr RecentInfo -> IO CLong) -> IO CLong
forall a b. (a -> b) -> a -> b
$ \Ptr RecentInfo
argPtr1 ->Ptr RecentInfo -> IO CLong
gtk_recent_info_get_visited Ptr RecentInfo
argPtr1)
{-# LINE 287 "./Graphics/UI/Gtk/Recent/RecentInfo.chs" #-}
self
recentInfoHasApplication :: GlibString string => RecentInfo
-> string
-> IO Bool
recentInfoHasApplication :: forall string. GlibString string => RecentInfo -> string -> IO Bool
recentInfoHasApplication RecentInfo
self string
appName =
(CInt -> Bool) -> IO CInt -> IO Bool
forall (m :: * -> *) a1 r. Monad m => (a1 -> r) -> m a1 -> m r
liftM CInt -> Bool
forall a. (Eq a, Num a) => a -> Bool
toBool (IO CInt -> IO Bool) -> IO CInt -> IO Bool
forall a b. (a -> b) -> a -> b
$
string -> (Ptr CChar -> IO CInt) -> IO CInt
forall a. string -> (Ptr CChar -> IO a) -> IO a
forall s a. GlibString s => s -> (Ptr CChar -> IO a) -> IO a
withUTFString string
appName ((Ptr CChar -> IO CInt) -> IO CInt)
-> (Ptr CChar -> IO CInt) -> IO CInt
forall a b. (a -> b) -> a -> b
$ \Ptr CChar
appNamePtr ->
(\(RecentInfo ForeignPtr RecentInfo
arg1) Ptr CChar
arg2 -> ForeignPtr RecentInfo -> (Ptr RecentInfo -> IO CInt) -> IO CInt
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr RecentInfo
arg1 ((Ptr RecentInfo -> IO CInt) -> IO CInt)
-> (Ptr RecentInfo -> IO CInt) -> IO CInt
forall a b. (a -> b) -> a -> b
$ \Ptr RecentInfo
argPtr1 ->Ptr RecentInfo -> Ptr CChar -> IO CInt
gtk_recent_info_has_application Ptr RecentInfo
argPtr1 Ptr CChar
arg2)
{-# LINE 300 "./Graphics/UI/Gtk/Recent/RecentInfo.chs" #-}
self
Ptr CChar
appNamePtr
recentInfoHasGroup :: GlibString string => RecentInfo
-> string
-> IO Bool
recentInfoHasGroup :: forall string. GlibString string => RecentInfo -> string -> IO Bool
recentInfoHasGroup RecentInfo
self string
groupName =
(CInt -> Bool) -> IO CInt -> IO Bool
forall (m :: * -> *) a1 r. Monad m => (a1 -> r) -> m a1 -> m r
liftM CInt -> Bool
forall a. (Eq a, Num a) => a -> Bool
toBool (IO CInt -> IO Bool) -> IO CInt -> IO Bool
forall a b. (a -> b) -> a -> b
$
string -> (Ptr CChar -> IO CInt) -> IO CInt
forall a. string -> (Ptr CChar -> IO a) -> IO a
forall s a. GlibString s => s -> (Ptr CChar -> IO a) -> IO a
withUTFString string
groupName ((Ptr CChar -> IO CInt) -> IO CInt)
-> (Ptr CChar -> IO CInt) -> IO CInt
forall a b. (a -> b) -> a -> b
$ \Ptr CChar
groupNamePtr ->
(\(RecentInfo ForeignPtr RecentInfo
arg1) Ptr CChar
arg2 -> ForeignPtr RecentInfo -> (Ptr RecentInfo -> IO CInt) -> IO CInt
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr RecentInfo
arg1 ((Ptr RecentInfo -> IO CInt) -> IO CInt)
-> (Ptr RecentInfo -> IO CInt) -> IO CInt
forall a b. (a -> b) -> a -> b
$ \Ptr RecentInfo
argPtr1 ->Ptr RecentInfo -> Ptr CChar -> IO CInt
gtk_recent_info_has_group Ptr RecentInfo
argPtr1 Ptr CChar
arg2)
{-# LINE 314 "./Graphics/UI/Gtk/Recent/RecentInfo.chs" #-}
self
Ptr CChar
groupNamePtr
recentInfoIsLocal :: RecentInfo
-> IO Bool
recentInfoIsLocal :: RecentInfo -> IO Bool
recentInfoIsLocal RecentInfo
self =
(CInt -> Bool) -> IO CInt -> IO Bool
forall (m :: * -> *) a1 r. Monad m => (a1 -> r) -> m a1 -> m r
liftM CInt -> Bool
forall a. (Eq a, Num a) => a -> Bool
toBool (IO CInt -> IO Bool) -> IO CInt -> IO Bool
forall a b. (a -> b) -> a -> b
$
(\(RecentInfo ForeignPtr RecentInfo
arg1) -> ForeignPtr RecentInfo -> (Ptr RecentInfo -> IO CInt) -> IO CInt
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr RecentInfo
arg1 ((Ptr RecentInfo -> IO CInt) -> IO CInt)
-> (Ptr RecentInfo -> IO CInt) -> IO CInt
forall a b. (a -> b) -> a -> b
$ \Ptr RecentInfo
argPtr1 ->Ptr RecentInfo -> IO CInt
gtk_recent_info_is_local Ptr RecentInfo
argPtr1)
{-# LINE 326 "./Graphics/UI/Gtk/Recent/RecentInfo.chs" #-}
self
recentInfoLastApplication :: GlibString string => RecentInfo
-> IO string
recentInfoLastApplication :: forall string. GlibString string => RecentInfo -> IO string
recentInfoLastApplication RecentInfo
self =
(\(RecentInfo ForeignPtr RecentInfo
arg1) -> ForeignPtr RecentInfo
-> (Ptr RecentInfo -> IO (Ptr CChar)) -> IO (Ptr CChar)
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr RecentInfo
arg1 ((Ptr RecentInfo -> IO (Ptr CChar)) -> IO (Ptr CChar))
-> (Ptr RecentInfo -> IO (Ptr CChar)) -> IO (Ptr CChar)
forall a b. (a -> b) -> a -> b
$ \Ptr RecentInfo
argPtr1 ->Ptr RecentInfo -> IO (Ptr CChar)
gtk_recent_info_last_application Ptr RecentInfo
argPtr1)
{-# LINE 337 "./Graphics/UI/Gtk/Recent/RecentInfo.chs" #-}
self
IO (Ptr CChar) -> (Ptr CChar -> IO string) -> IO string
forall a b. IO a -> (a -> IO b) -> IO b
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= Ptr CChar -> IO string
forall s. GlibString s => Ptr CChar -> IO s
readUTFString
recentInfoMatch :: RecentInfo -> RecentInfo
-> IO Bool
recentInfoMatch :: RecentInfo -> RecentInfo -> IO Bool
recentInfoMatch RecentInfo
self RecentInfo
infoB =
(CInt -> Bool) -> IO CInt -> IO Bool
forall (m :: * -> *) a1 r. Monad m => (a1 -> r) -> m a1 -> m r
liftM CInt -> Bool
forall a. (Eq a, Num a) => a -> Bool
toBool (IO CInt -> IO Bool) -> IO CInt -> IO Bool
forall a b. (a -> b) -> a -> b
$
(\(RecentInfo ForeignPtr RecentInfo
arg1) (RecentInfo ForeignPtr RecentInfo
arg2) -> ForeignPtr RecentInfo -> (Ptr RecentInfo -> IO CInt) -> IO CInt
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr RecentInfo
arg1 ((Ptr RecentInfo -> IO CInt) -> IO CInt)
-> (Ptr RecentInfo -> IO CInt) -> IO CInt
forall a b. (a -> b) -> a -> b
$ \Ptr RecentInfo
argPtr1 ->ForeignPtr RecentInfo -> (Ptr RecentInfo -> IO CInt) -> IO CInt
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr RecentInfo
arg2 ((Ptr RecentInfo -> IO CInt) -> IO CInt)
-> (Ptr RecentInfo -> IO CInt) -> IO CInt
forall a b. (a -> b) -> a -> b
$ \Ptr RecentInfo
argPtr2 ->Ptr RecentInfo -> Ptr RecentInfo -> IO CInt
gtk_recent_info_match Ptr RecentInfo
argPtr1 Ptr RecentInfo
argPtr2)
{-# LINE 349 "./Graphics/UI/Gtk/Recent/RecentInfo.chs" #-}
self
RecentInfo
infoB
foreign import ccall safe "gtk_recent_info_exists"
gtk_recent_info_exists :: ((Ptr RecentInfo) -> (IO CInt))
foreign import ccall safe "gtk_recent_info_get_added"
gtk_recent_info_get_added :: ((Ptr RecentInfo) -> (IO CLong))
foreign import ccall safe "gtk_recent_info_get_age"
gtk_recent_info_get_age :: ((Ptr RecentInfo) -> (IO CInt))
foreign import ccall safe "gtk_recent_info_get_application_info"
gtk_recent_info_get_application_info :: ((Ptr RecentInfo) -> ((Ptr CChar) -> ((Ptr (Ptr CChar)) -> ((Ptr CUInt) -> ((Ptr CLong) -> (IO CInt))))))
foreign import ccall safe "gtk_recent_info_get_applications"
gtk_recent_info_get_applications :: ((Ptr RecentInfo) -> ((Ptr CUInt) -> (IO (Ptr (Ptr CChar)))))
foreign import ccall safe "gtk_recent_info_get_description"
gtk_recent_info_get_description :: ((Ptr RecentInfo) -> (IO (Ptr CChar)))
foreign import ccall safe "gtk_recent_info_get_display_name"
gtk_recent_info_get_display_name :: ((Ptr RecentInfo) -> (IO (Ptr CChar)))
foreign import ccall safe "gtk_recent_info_get_groups"
gtk_recent_info_get_groups :: ((Ptr RecentInfo) -> ((Ptr CUInt) -> (IO (Ptr (Ptr CChar)))))
foreign import ccall safe "gtk_recent_info_get_icon"
gtk_recent_info_get_icon :: ((Ptr RecentInfo) -> (CInt -> (IO (Ptr Pixbuf))))
foreign import ccall safe "gtk_recent_info_get_mime_type"
gtk_recent_info_get_mime_type :: ((Ptr RecentInfo) -> (IO (Ptr CChar)))
foreign import ccall safe "gtk_recent_info_get_modified"
gtk_recent_info_get_modified :: ((Ptr RecentInfo) -> (IO CLong))
foreign import ccall safe "gtk_recent_info_get_private_hint"
gtk_recent_info_get_private_hint :: ((Ptr RecentInfo) -> (IO CInt))
foreign import ccall safe "gtk_recent_info_get_short_name"
gtk_recent_info_get_short_name :: ((Ptr RecentInfo) -> (IO (Ptr CChar)))
foreign import ccall safe "gtk_recent_info_get_uri"
gtk_recent_info_get_uri :: ((Ptr RecentInfo) -> (IO (Ptr CChar)))
foreign import ccall safe "gtk_recent_info_get_uri_display"
gtk_recent_info_get_uri_display :: ((Ptr RecentInfo) -> (IO (Ptr CChar)))
foreign import ccall safe "gtk_recent_info_get_visited"
gtk_recent_info_get_visited :: ((Ptr RecentInfo) -> (IO CLong))
foreign import ccall safe "gtk_recent_info_has_application"
gtk_recent_info_has_application :: ((Ptr RecentInfo) -> ((Ptr CChar) -> (IO CInt)))
foreign import ccall safe "gtk_recent_info_has_group"
gtk_recent_info_has_group :: ((Ptr RecentInfo) -> ((Ptr CChar) -> (IO CInt)))
foreign import ccall safe "gtk_recent_info_is_local"
gtk_recent_info_is_local :: ((Ptr RecentInfo) -> (IO CInt))
foreign import ccall safe "gtk_recent_info_last_application"
gtk_recent_info_last_application :: ((Ptr RecentInfo) -> (IO (Ptr CChar)))
foreign import ccall safe "gtk_recent_info_match"
gtk_recent_info_match :: ((Ptr RecentInfo) -> ((Ptr RecentInfo) -> (IO CInt)))