{-# LANGUAGE TypeApplications #-}
#if (MIN_VERSION_haskell_gi_overloading(1,0,0) && !defined(__HADDOCK_VERSION__))
#define ENABLE_OVERLOADING
#endif
module GI.Wnck.Objects.Workspace
(
Workspace(..) ,
IsWorkspace ,
toWorkspace ,
#if defined(ENABLE_OVERLOADING)
ResolveWorkspaceMethod ,
#endif
#if defined(ENABLE_OVERLOADING)
WorkspaceActivateMethodInfo ,
#endif
workspaceActivate ,
#if defined(ENABLE_OVERLOADING)
WorkspaceChangeNameMethodInfo ,
#endif
workspaceChangeName ,
#if defined(ENABLE_OVERLOADING)
WorkspaceGetHeightMethodInfo ,
#endif
workspaceGetHeight ,
#if defined(ENABLE_OVERLOADING)
WorkspaceGetLayoutColumnMethodInfo ,
#endif
workspaceGetLayoutColumn ,
#if defined(ENABLE_OVERLOADING)
WorkspaceGetLayoutRowMethodInfo ,
#endif
workspaceGetLayoutRow ,
#if defined(ENABLE_OVERLOADING)
WorkspaceGetNameMethodInfo ,
#endif
workspaceGetName ,
#if defined(ENABLE_OVERLOADING)
WorkspaceGetNeighborMethodInfo ,
#endif
workspaceGetNeighbor ,
#if defined(ENABLE_OVERLOADING)
WorkspaceGetNumberMethodInfo ,
#endif
workspaceGetNumber ,
#if defined(ENABLE_OVERLOADING)
WorkspaceGetScreenMethodInfo ,
#endif
workspaceGetScreen ,
#if defined(ENABLE_OVERLOADING)
WorkspaceGetViewportXMethodInfo ,
#endif
workspaceGetViewportX ,
#if defined(ENABLE_OVERLOADING)
WorkspaceGetViewportYMethodInfo ,
#endif
workspaceGetViewportY ,
#if defined(ENABLE_OVERLOADING)
WorkspaceGetWidthMethodInfo ,
#endif
workspaceGetWidth ,
#if defined(ENABLE_OVERLOADING)
WorkspaceIsVirtualMethodInfo ,
#endif
workspaceIsVirtual ,
C_WorkspaceNameChangedCallback ,
WorkspaceNameChangedCallback ,
#if defined(ENABLE_OVERLOADING)
WorkspaceNameChangedSignalInfo ,
#endif
afterWorkspaceNameChanged ,
genClosure_WorkspaceNameChanged ,
mk_WorkspaceNameChangedCallback ,
noWorkspaceNameChangedCallback ,
onWorkspaceNameChanged ,
wrap_WorkspaceNameChangedCallback ,
) 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.BasicTypes as B.Types
import qualified Data.GI.Base.ManagedPtr as B.ManagedPtr
import qualified Data.GI.Base.GArray as B.GArray
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.GI.Base.Signals as B.Signals
import qualified Control.Monad.IO.Class as MIO
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
import qualified GHC.Records as R
import qualified GI.GObject.Objects.Object as GObject.Object
import {-# SOURCE #-} qualified GI.Wnck.Enums as Wnck.Enums
import {-# SOURCE #-} qualified GI.Wnck.Objects.Screen as Wnck.Screen
newtype Workspace = Workspace (SP.ManagedPtr Workspace)
deriving (Workspace -> Workspace -> Bool
(Workspace -> Workspace -> Bool)
-> (Workspace -> Workspace -> Bool) -> Eq Workspace
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: Workspace -> Workspace -> Bool
$c/= :: Workspace -> Workspace -> Bool
== :: Workspace -> Workspace -> Bool
$c== :: Workspace -> Workspace -> Bool
Eq)
instance SP.ManagedPtrNewtype Workspace where
toManagedPtr :: Workspace -> ManagedPtr Workspace
toManagedPtr (Workspace ManagedPtr Workspace
p) = ManagedPtr Workspace
p
foreign import ccall "wnck_workspace_get_type"
c_wnck_workspace_get_type :: IO B.Types.GType
instance B.Types.TypedObject Workspace where
glibType :: IO GType
glibType = IO GType
c_wnck_workspace_get_type
instance B.Types.GObject Workspace
class (SP.GObject o, O.IsDescendantOf Workspace o) => IsWorkspace o
instance (SP.GObject o, O.IsDescendantOf Workspace o) => IsWorkspace o
instance O.HasParentTypes Workspace
type instance O.ParentTypes Workspace = '[GObject.Object.Object]
toWorkspace :: (MIO.MonadIO m, IsWorkspace o) => o -> m Workspace
toWorkspace :: forall (m :: * -> *) o.
(MonadIO m, IsWorkspace o) =>
o -> m Workspace
toWorkspace = IO Workspace -> m Workspace
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO Workspace -> m Workspace)
-> (o -> IO Workspace) -> o -> m Workspace
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (ManagedPtr Workspace -> Workspace) -> o -> IO Workspace
forall o o'.
(HasCallStack, ManagedPtrNewtype o, TypedObject o,
ManagedPtrNewtype o', TypedObject o') =>
(ManagedPtr o' -> o') -> o -> IO o'
B.ManagedPtr.unsafeCastTo ManagedPtr Workspace -> Workspace
Workspace
instance B.GValue.IsGValue (Maybe Workspace) where
gvalueGType_ :: IO GType
gvalueGType_ = IO GType
c_wnck_workspace_get_type
gvalueSet_ :: Ptr GValue -> Maybe Workspace -> IO ()
gvalueSet_ Ptr GValue
gv Maybe Workspace
P.Nothing = Ptr GValue -> Ptr Workspace -> IO ()
forall a. GObject a => Ptr GValue -> Ptr a -> IO ()
B.GValue.set_object Ptr GValue
gv (Ptr Workspace
forall a. Ptr a
FP.nullPtr :: FP.Ptr Workspace)
gvalueSet_ Ptr GValue
gv (P.Just Workspace
obj) = Workspace -> (Ptr Workspace -> IO ()) -> IO ()
forall a c.
(HasCallStack, ManagedPtrNewtype a) =>
a -> (Ptr a -> IO c) -> IO c
B.ManagedPtr.withManagedPtr Workspace
obj (Ptr GValue -> Ptr Workspace -> IO ()
forall a. GObject a => Ptr GValue -> Ptr a -> IO ()
B.GValue.set_object Ptr GValue
gv)
gvalueGet_ :: Ptr GValue -> IO (Maybe Workspace)
gvalueGet_ Ptr GValue
gv = do
Ptr Workspace
ptr <- Ptr GValue -> IO (Ptr Workspace)
forall a. GObject a => Ptr GValue -> IO (Ptr a)
B.GValue.get_object Ptr GValue
gv :: IO (FP.Ptr Workspace)
if Ptr Workspace
ptr Ptr Workspace -> Ptr Workspace -> Bool
forall a. Eq a => a -> a -> Bool
/= Ptr Workspace
forall a. Ptr a
FP.nullPtr
then Workspace -> Maybe Workspace
forall a. a -> Maybe a
P.Just (Workspace -> Maybe Workspace)
-> IO Workspace -> IO (Maybe Workspace)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (ManagedPtr Workspace -> Workspace)
-> Ptr Workspace -> IO Workspace
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
B.ManagedPtr.newObject ManagedPtr Workspace -> Workspace
Workspace Ptr Workspace
ptr
else Maybe Workspace -> IO (Maybe Workspace)
forall (m :: * -> *) a. Monad m => a -> m a
return Maybe Workspace
forall a. Maybe a
P.Nothing
#if defined(ENABLE_OVERLOADING)
type family ResolveWorkspaceMethod (t :: Symbol) (o :: *) :: * where
ResolveWorkspaceMethod "activate" o = WorkspaceActivateMethodInfo
ResolveWorkspaceMethod "bindProperty" o = GObject.Object.ObjectBindPropertyMethodInfo
ResolveWorkspaceMethod "bindPropertyFull" o = GObject.Object.ObjectBindPropertyFullMethodInfo
ResolveWorkspaceMethod "changeName" o = WorkspaceChangeNameMethodInfo
ResolveWorkspaceMethod "forceFloating" o = GObject.Object.ObjectForceFloatingMethodInfo
ResolveWorkspaceMethod "freezeNotify" o = GObject.Object.ObjectFreezeNotifyMethodInfo
ResolveWorkspaceMethod "getv" o = GObject.Object.ObjectGetvMethodInfo
ResolveWorkspaceMethod "isFloating" o = GObject.Object.ObjectIsFloatingMethodInfo
ResolveWorkspaceMethod "isVirtual" o = WorkspaceIsVirtualMethodInfo
ResolveWorkspaceMethod "notify" o = GObject.Object.ObjectNotifyMethodInfo
ResolveWorkspaceMethod "notifyByPspec" o = GObject.Object.ObjectNotifyByPspecMethodInfo
ResolveWorkspaceMethod "ref" o = GObject.Object.ObjectRefMethodInfo
ResolveWorkspaceMethod "refSink" o = GObject.Object.ObjectRefSinkMethodInfo
ResolveWorkspaceMethod "runDispose" o = GObject.Object.ObjectRunDisposeMethodInfo
ResolveWorkspaceMethod "stealData" o = GObject.Object.ObjectStealDataMethodInfo
ResolveWorkspaceMethod "stealQdata" o = GObject.Object.ObjectStealQdataMethodInfo
ResolveWorkspaceMethod "thawNotify" o = GObject.Object.ObjectThawNotifyMethodInfo
ResolveWorkspaceMethod "unref" o = GObject.Object.ObjectUnrefMethodInfo
ResolveWorkspaceMethod "watchClosure" o = GObject.Object.ObjectWatchClosureMethodInfo
ResolveWorkspaceMethod "getData" o = GObject.Object.ObjectGetDataMethodInfo
ResolveWorkspaceMethod "getHeight" o = WorkspaceGetHeightMethodInfo
ResolveWorkspaceMethod "getLayoutColumn" o = WorkspaceGetLayoutColumnMethodInfo
ResolveWorkspaceMethod "getLayoutRow" o = WorkspaceGetLayoutRowMethodInfo
ResolveWorkspaceMethod "getName" o = WorkspaceGetNameMethodInfo
ResolveWorkspaceMethod "getNeighbor" o = WorkspaceGetNeighborMethodInfo
ResolveWorkspaceMethod "getNumber" o = WorkspaceGetNumberMethodInfo
ResolveWorkspaceMethod "getProperty" o = GObject.Object.ObjectGetPropertyMethodInfo
ResolveWorkspaceMethod "getQdata" o = GObject.Object.ObjectGetQdataMethodInfo
ResolveWorkspaceMethod "getScreen" o = WorkspaceGetScreenMethodInfo
ResolveWorkspaceMethod "getViewportX" o = WorkspaceGetViewportXMethodInfo
ResolveWorkspaceMethod "getViewportY" o = WorkspaceGetViewportYMethodInfo
ResolveWorkspaceMethod "getWidth" o = WorkspaceGetWidthMethodInfo
ResolveWorkspaceMethod "setData" o = GObject.Object.ObjectSetDataMethodInfo
ResolveWorkspaceMethod "setDataFull" o = GObject.Object.ObjectSetDataFullMethodInfo
ResolveWorkspaceMethod "setProperty" o = GObject.Object.ObjectSetPropertyMethodInfo
ResolveWorkspaceMethod l o = O.MethodResolutionFailed l o
instance (info ~ ResolveWorkspaceMethod t Workspace, O.OverloadedMethod info Workspace p) => OL.IsLabel t (Workspace -> p) where
#if MIN_VERSION_base(4,10,0)
fromLabel = O.overloadedMethod @info
#else
fromLabel _ = O.overloadedMethod @info
#endif
#if MIN_VERSION_base(4,13,0)
instance (info ~ ResolveWorkspaceMethod t Workspace, O.OverloadedMethod info Workspace p, R.HasField t Workspace p) => R.HasField t Workspace p where
getField = O.overloadedMethod @info
#endif
instance (info ~ ResolveWorkspaceMethod t Workspace, O.OverloadedMethodInfo info Workspace) => OL.IsLabel t (O.MethodProxy info Workspace) where
#if MIN_VERSION_base(4,10,0)
fromLabel = O.MethodProxy
#else
fromLabel _ = O.MethodProxy
#endif
#endif
type WorkspaceNameChangedCallback =
IO ()
noWorkspaceNameChangedCallback :: Maybe WorkspaceNameChangedCallback
noWorkspaceNameChangedCallback :: Maybe (IO ())
noWorkspaceNameChangedCallback = Maybe (IO ())
forall a. Maybe a
Nothing
type C_WorkspaceNameChangedCallback =
Ptr () ->
Ptr () ->
IO ()
foreign import ccall "wrapper"
mk_WorkspaceNameChangedCallback :: C_WorkspaceNameChangedCallback -> IO (FunPtr C_WorkspaceNameChangedCallback)
genClosure_WorkspaceNameChanged :: MonadIO m => WorkspaceNameChangedCallback -> m (GClosure C_WorkspaceNameChangedCallback)
genClosure_WorkspaceNameChanged :: forall (m :: * -> *).
MonadIO m =>
IO () -> m (GClosure C_WorkspaceNameChangedCallback)
genClosure_WorkspaceNameChanged IO ()
cb = IO (GClosure C_WorkspaceNameChangedCallback)
-> m (GClosure C_WorkspaceNameChangedCallback)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO (GClosure C_WorkspaceNameChangedCallback)
-> m (GClosure C_WorkspaceNameChangedCallback))
-> IO (GClosure C_WorkspaceNameChangedCallback)
-> m (GClosure C_WorkspaceNameChangedCallback)
forall a b. (a -> b) -> a -> b
$ do
let cb' :: C_WorkspaceNameChangedCallback
cb' = IO () -> C_WorkspaceNameChangedCallback
wrap_WorkspaceNameChangedCallback IO ()
cb
C_WorkspaceNameChangedCallback
-> IO (FunPtr C_WorkspaceNameChangedCallback)
mk_WorkspaceNameChangedCallback C_WorkspaceNameChangedCallback
cb' IO (FunPtr C_WorkspaceNameChangedCallback)
-> (FunPtr C_WorkspaceNameChangedCallback
-> IO (GClosure C_WorkspaceNameChangedCallback))
-> IO (GClosure C_WorkspaceNameChangedCallback)
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= FunPtr C_WorkspaceNameChangedCallback
-> IO (GClosure C_WorkspaceNameChangedCallback)
forall (m :: * -> *) a. MonadIO m => FunPtr a -> m (GClosure a)
B.GClosure.newGClosure
wrap_WorkspaceNameChangedCallback ::
WorkspaceNameChangedCallback ->
C_WorkspaceNameChangedCallback
wrap_WorkspaceNameChangedCallback :: IO () -> C_WorkspaceNameChangedCallback
wrap_WorkspaceNameChangedCallback IO ()
_cb Ptr ()
_ Ptr ()
_ = do
IO ()
_cb
onWorkspaceNameChanged :: (IsWorkspace a, MonadIO m) => a -> WorkspaceNameChangedCallback -> m SignalHandlerId
onWorkspaceNameChanged :: forall a (m :: * -> *).
(IsWorkspace a, MonadIO m) =>
a -> IO () -> m SignalHandlerId
onWorkspaceNameChanged a
obj IO ()
cb = IO SignalHandlerId -> m SignalHandlerId
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
let cb' :: C_WorkspaceNameChangedCallback
cb' = IO () -> C_WorkspaceNameChangedCallback
wrap_WorkspaceNameChangedCallback IO ()
cb
FunPtr C_WorkspaceNameChangedCallback
cb'' <- C_WorkspaceNameChangedCallback
-> IO (FunPtr C_WorkspaceNameChangedCallback)
mk_WorkspaceNameChangedCallback C_WorkspaceNameChangedCallback
cb'
a
-> Text
-> FunPtr C_WorkspaceNameChangedCallback
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj Text
"name-changed" FunPtr C_WorkspaceNameChangedCallback
cb'' SignalConnectMode
SignalConnectBefore Maybe Text
forall a. Maybe a
Nothing
afterWorkspaceNameChanged :: (IsWorkspace a, MonadIO m) => a -> WorkspaceNameChangedCallback -> m SignalHandlerId
afterWorkspaceNameChanged :: forall a (m :: * -> *).
(IsWorkspace a, MonadIO m) =>
a -> IO () -> m SignalHandlerId
afterWorkspaceNameChanged a
obj IO ()
cb = IO SignalHandlerId -> m SignalHandlerId
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
let cb' :: C_WorkspaceNameChangedCallback
cb' = IO () -> C_WorkspaceNameChangedCallback
wrap_WorkspaceNameChangedCallback IO ()
cb
FunPtr C_WorkspaceNameChangedCallback
cb'' <- C_WorkspaceNameChangedCallback
-> IO (FunPtr C_WorkspaceNameChangedCallback)
mk_WorkspaceNameChangedCallback C_WorkspaceNameChangedCallback
cb'
a
-> Text
-> FunPtr C_WorkspaceNameChangedCallback
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj Text
"name-changed" FunPtr C_WorkspaceNameChangedCallback
cb'' SignalConnectMode
SignalConnectAfter Maybe Text
forall a. Maybe a
Nothing
#if defined(ENABLE_OVERLOADING)
data WorkspaceNameChangedSignalInfo
instance SignalInfo WorkspaceNameChangedSignalInfo where
type HaskellCallbackType WorkspaceNameChangedSignalInfo = WorkspaceNameChangedCallback
connectSignal obj cb connectMode detail = do
let cb' = wrap_WorkspaceNameChangedCallback cb
cb'' <- mk_WorkspaceNameChangedCallback cb'
connectSignalFunPtr obj "name-changed" cb'' connectMode detail
#endif
#if defined(ENABLE_OVERLOADING)
instance O.HasAttributeList Workspace
type instance O.AttributeList Workspace = WorkspaceAttributeList
type WorkspaceAttributeList = ('[ ] :: [(Symbol, *)])
#endif
#if defined(ENABLE_OVERLOADING)
#endif
#if defined(ENABLE_OVERLOADING)
type instance O.SignalList Workspace = WorkspaceSignalList
type WorkspaceSignalList = ('[ '("nameChanged", WorkspaceNameChangedSignalInfo), '("notify", GObject.Object.ObjectNotifySignalInfo)] :: [(Symbol, *)])
#endif
foreign import ccall "wnck_workspace_activate" wnck_workspace_activate ::
Ptr Workspace ->
Word32 ->
IO ()
workspaceActivate ::
(B.CallStack.HasCallStack, MonadIO m, IsWorkspace a) =>
a
-> Word32
-> m ()
workspaceActivate :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsWorkspace a) =>
a -> Word32 -> m ()
workspaceActivate a
space Word32
timestamp = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
Ptr Workspace
space' <- a -> IO (Ptr Workspace)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
space
Ptr Workspace -> Word32 -> IO ()
wnck_workspace_activate Ptr Workspace
space' Word32
timestamp
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
space
() -> IO ()
forall (m :: * -> *) a. Monad m => a -> m a
return ()
#if defined(ENABLE_OVERLOADING)
data WorkspaceActivateMethodInfo
instance (signature ~ (Word32 -> m ()), MonadIO m, IsWorkspace a) => O.OverloadedMethod WorkspaceActivateMethodInfo a signature where
overloadedMethod = workspaceActivate
instance O.OverloadedMethodInfo WorkspaceActivateMethodInfo a where
overloadedMethodInfo = O.MethodInfo {
O.overloadedMethodName = "GI.Wnck.Objects.Workspace.workspaceActivate",
O.overloadedMethodURL = "https://hackage.haskell.org/package/gi-wnck-3.0.10/docs/GI-Wnck-Objects-Workspace.html#v:workspaceActivate"
}
#endif
foreign import ccall "wnck_workspace_change_name" wnck_workspace_change_name ::
Ptr Workspace ->
CString ->
IO ()
workspaceChangeName ::
(B.CallStack.HasCallStack, MonadIO m, IsWorkspace a) =>
a
-> T.Text
-> m ()
workspaceChangeName :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsWorkspace a) =>
a -> Text -> m ()
workspaceChangeName a
space Text
name = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
Ptr Workspace
space' <- a -> IO (Ptr Workspace)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
space
CString
name' <- Text -> IO CString
textToCString Text
name
Ptr Workspace -> CString -> IO ()
wnck_workspace_change_name Ptr Workspace
space' CString
name'
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
space
CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
name'
() -> IO ()
forall (m :: * -> *) a. Monad m => a -> m a
return ()
#if defined(ENABLE_OVERLOADING)
data WorkspaceChangeNameMethodInfo
instance (signature ~ (T.Text -> m ()), MonadIO m, IsWorkspace a) => O.OverloadedMethod WorkspaceChangeNameMethodInfo a signature where
overloadedMethod = workspaceChangeName
instance O.OverloadedMethodInfo WorkspaceChangeNameMethodInfo a where
overloadedMethodInfo = O.MethodInfo {
O.overloadedMethodName = "GI.Wnck.Objects.Workspace.workspaceChangeName",
O.overloadedMethodURL = "https://hackage.haskell.org/package/gi-wnck-3.0.10/docs/GI-Wnck-Objects-Workspace.html#v:workspaceChangeName"
}
#endif
foreign import ccall "wnck_workspace_get_height" wnck_workspace_get_height ::
Ptr Workspace ->
IO Int32
workspaceGetHeight ::
(B.CallStack.HasCallStack, MonadIO m, IsWorkspace a) =>
a
-> m Int32
workspaceGetHeight :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsWorkspace a) =>
a -> m Int32
workspaceGetHeight a
space = IO Int32 -> m Int32
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Int32 -> m Int32) -> IO Int32 -> m Int32
forall a b. (a -> b) -> a -> b
$ do
Ptr Workspace
space' <- a -> IO (Ptr Workspace)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
space
Int32
result <- Ptr Workspace -> IO Int32
wnck_workspace_get_height Ptr Workspace
space'
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
space
Int32 -> IO Int32
forall (m :: * -> *) a. Monad m => a -> m a
return Int32
result
#if defined(ENABLE_OVERLOADING)
data WorkspaceGetHeightMethodInfo
instance (signature ~ (m Int32), MonadIO m, IsWorkspace a) => O.OverloadedMethod WorkspaceGetHeightMethodInfo a signature where
overloadedMethod = workspaceGetHeight
instance O.OverloadedMethodInfo WorkspaceGetHeightMethodInfo a where
overloadedMethodInfo = O.MethodInfo {
O.overloadedMethodName = "GI.Wnck.Objects.Workspace.workspaceGetHeight",
O.overloadedMethodURL = "https://hackage.haskell.org/package/gi-wnck-3.0.10/docs/GI-Wnck-Objects-Workspace.html#v:workspaceGetHeight"
}
#endif
foreign import ccall "wnck_workspace_get_layout_column" wnck_workspace_get_layout_column ::
Ptr Workspace ->
IO Int32
workspaceGetLayoutColumn ::
(B.CallStack.HasCallStack, MonadIO m, IsWorkspace a) =>
a
-> m Int32
workspaceGetLayoutColumn :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsWorkspace a) =>
a -> m Int32
workspaceGetLayoutColumn a
space = IO Int32 -> m Int32
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Int32 -> m Int32) -> IO Int32 -> m Int32
forall a b. (a -> b) -> a -> b
$ do
Ptr Workspace
space' <- a -> IO (Ptr Workspace)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
space
Int32
result <- Ptr Workspace -> IO Int32
wnck_workspace_get_layout_column Ptr Workspace
space'
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
space
Int32 -> IO Int32
forall (m :: * -> *) a. Monad m => a -> m a
return Int32
result
#if defined(ENABLE_OVERLOADING)
data WorkspaceGetLayoutColumnMethodInfo
instance (signature ~ (m Int32), MonadIO m, IsWorkspace a) => O.OverloadedMethod WorkspaceGetLayoutColumnMethodInfo a signature where
overloadedMethod = workspaceGetLayoutColumn
instance O.OverloadedMethodInfo WorkspaceGetLayoutColumnMethodInfo a where
overloadedMethodInfo = O.MethodInfo {
O.overloadedMethodName = "GI.Wnck.Objects.Workspace.workspaceGetLayoutColumn",
O.overloadedMethodURL = "https://hackage.haskell.org/package/gi-wnck-3.0.10/docs/GI-Wnck-Objects-Workspace.html#v:workspaceGetLayoutColumn"
}
#endif
foreign import ccall "wnck_workspace_get_layout_row" wnck_workspace_get_layout_row ::
Ptr Workspace ->
IO Int32
workspaceGetLayoutRow ::
(B.CallStack.HasCallStack, MonadIO m, IsWorkspace a) =>
a
-> m Int32
workspaceGetLayoutRow :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsWorkspace a) =>
a -> m Int32
workspaceGetLayoutRow a
space = IO Int32 -> m Int32
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Int32 -> m Int32) -> IO Int32 -> m Int32
forall a b. (a -> b) -> a -> b
$ do
Ptr Workspace
space' <- a -> IO (Ptr Workspace)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
space
Int32
result <- Ptr Workspace -> IO Int32
wnck_workspace_get_layout_row Ptr Workspace
space'
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
space
Int32 -> IO Int32
forall (m :: * -> *) a. Monad m => a -> m a
return Int32
result
#if defined(ENABLE_OVERLOADING)
data WorkspaceGetLayoutRowMethodInfo
instance (signature ~ (m Int32), MonadIO m, IsWorkspace a) => O.OverloadedMethod WorkspaceGetLayoutRowMethodInfo a signature where
overloadedMethod = workspaceGetLayoutRow
instance O.OverloadedMethodInfo WorkspaceGetLayoutRowMethodInfo a where
overloadedMethodInfo = O.MethodInfo {
O.overloadedMethodName = "GI.Wnck.Objects.Workspace.workspaceGetLayoutRow",
O.overloadedMethodURL = "https://hackage.haskell.org/package/gi-wnck-3.0.10/docs/GI-Wnck-Objects-Workspace.html#v:workspaceGetLayoutRow"
}
#endif
foreign import ccall "wnck_workspace_get_name" wnck_workspace_get_name ::
Ptr Workspace ->
IO CString
workspaceGetName ::
(B.CallStack.HasCallStack, MonadIO m, IsWorkspace a) =>
a
-> m T.Text
workspaceGetName :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsWorkspace a) =>
a -> m Text
workspaceGetName a
space = IO Text -> m Text
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Text -> m Text) -> IO Text -> m Text
forall a b. (a -> b) -> a -> b
$ do
Ptr Workspace
space' <- a -> IO (Ptr Workspace)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
space
CString
result <- Ptr Workspace -> IO CString
wnck_workspace_get_name Ptr Workspace
space'
Text -> CString -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"workspaceGetName" CString
result
Text
result' <- HasCallStack => CString -> IO Text
CString -> IO Text
cstringToText CString
result
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
space
Text -> IO Text
forall (m :: * -> *) a. Monad m => a -> m a
return Text
result'
#if defined(ENABLE_OVERLOADING)
data WorkspaceGetNameMethodInfo
instance (signature ~ (m T.Text), MonadIO m, IsWorkspace a) => O.OverloadedMethod WorkspaceGetNameMethodInfo a signature where
overloadedMethod = workspaceGetName
instance O.OverloadedMethodInfo WorkspaceGetNameMethodInfo a where
overloadedMethodInfo = O.MethodInfo {
O.overloadedMethodName = "GI.Wnck.Objects.Workspace.workspaceGetName",
O.overloadedMethodURL = "https://hackage.haskell.org/package/gi-wnck-3.0.10/docs/GI-Wnck-Objects-Workspace.html#v:workspaceGetName"
}
#endif
foreign import ccall "wnck_workspace_get_neighbor" wnck_workspace_get_neighbor ::
Ptr Workspace ->
CInt ->
IO (Ptr Workspace)
workspaceGetNeighbor ::
(B.CallStack.HasCallStack, MonadIO m, IsWorkspace a) =>
a
-> Wnck.Enums.MotionDirection
-> m Workspace
workspaceGetNeighbor :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsWorkspace a) =>
a -> MotionDirection -> m Workspace
workspaceGetNeighbor a
space MotionDirection
direction = IO Workspace -> m Workspace
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Workspace -> m Workspace) -> IO Workspace -> m Workspace
forall a b. (a -> b) -> a -> b
$ do
Ptr Workspace
space' <- a -> IO (Ptr Workspace)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
space
let direction' :: CInt
direction' = (Int -> CInt
forall a b. (Integral a, Num b) => a -> b
fromIntegral (Int -> CInt)
-> (MotionDirection -> Int) -> MotionDirection -> CInt
forall b c a. (b -> c) -> (a -> b) -> a -> c
. MotionDirection -> Int
forall a. Enum a => a -> Int
fromEnum) MotionDirection
direction
Ptr Workspace
result <- Ptr Workspace -> CInt -> IO (Ptr Workspace)
wnck_workspace_get_neighbor Ptr Workspace
space' CInt
direction'
Text -> Ptr Workspace -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"workspaceGetNeighbor" Ptr Workspace
result
Workspace
result' <- ((ManagedPtr Workspace -> Workspace)
-> Ptr Workspace -> IO Workspace
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
newObject ManagedPtr Workspace -> Workspace
Workspace) Ptr Workspace
result
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
space
Workspace -> IO Workspace
forall (m :: * -> *) a. Monad m => a -> m a
return Workspace
result'
#if defined(ENABLE_OVERLOADING)
data WorkspaceGetNeighborMethodInfo
instance (signature ~ (Wnck.Enums.MotionDirection -> m Workspace), MonadIO m, IsWorkspace a) => O.OverloadedMethod WorkspaceGetNeighborMethodInfo a signature where
overloadedMethod = workspaceGetNeighbor
instance O.OverloadedMethodInfo WorkspaceGetNeighborMethodInfo a where
overloadedMethodInfo = O.MethodInfo {
O.overloadedMethodName = "GI.Wnck.Objects.Workspace.workspaceGetNeighbor",
O.overloadedMethodURL = "https://hackage.haskell.org/package/gi-wnck-3.0.10/docs/GI-Wnck-Objects-Workspace.html#v:workspaceGetNeighbor"
}
#endif
foreign import ccall "wnck_workspace_get_number" wnck_workspace_get_number ::
Ptr Workspace ->
IO Int32
workspaceGetNumber ::
(B.CallStack.HasCallStack, MonadIO m, IsWorkspace a) =>
a
-> m Int32
workspaceGetNumber :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsWorkspace a) =>
a -> m Int32
workspaceGetNumber a
space = IO Int32 -> m Int32
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Int32 -> m Int32) -> IO Int32 -> m Int32
forall a b. (a -> b) -> a -> b
$ do
Ptr Workspace
space' <- a -> IO (Ptr Workspace)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
space
Int32
result <- Ptr Workspace -> IO Int32
wnck_workspace_get_number Ptr Workspace
space'
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
space
Int32 -> IO Int32
forall (m :: * -> *) a. Monad m => a -> m a
return Int32
result
#if defined(ENABLE_OVERLOADING)
data WorkspaceGetNumberMethodInfo
instance (signature ~ (m Int32), MonadIO m, IsWorkspace a) => O.OverloadedMethod WorkspaceGetNumberMethodInfo a signature where
overloadedMethod = workspaceGetNumber
instance O.OverloadedMethodInfo WorkspaceGetNumberMethodInfo a where
overloadedMethodInfo = O.MethodInfo {
O.overloadedMethodName = "GI.Wnck.Objects.Workspace.workspaceGetNumber",
O.overloadedMethodURL = "https://hackage.haskell.org/package/gi-wnck-3.0.10/docs/GI-Wnck-Objects-Workspace.html#v:workspaceGetNumber"
}
#endif
foreign import ccall "wnck_workspace_get_screen" wnck_workspace_get_screen ::
Ptr Workspace ->
IO (Ptr Wnck.Screen.Screen)
workspaceGetScreen ::
(B.CallStack.HasCallStack, MonadIO m, IsWorkspace a) =>
a
-> m Wnck.Screen.Screen
workspaceGetScreen :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsWorkspace a) =>
a -> m Screen
workspaceGetScreen a
space = IO Screen -> m Screen
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Screen -> m Screen) -> IO Screen -> m Screen
forall a b. (a -> b) -> a -> b
$ do
Ptr Workspace
space' <- a -> IO (Ptr Workspace)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
space
Ptr Screen
result <- Ptr Workspace -> IO (Ptr Screen)
wnck_workspace_get_screen Ptr Workspace
space'
Text -> Ptr Screen -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"workspaceGetScreen" Ptr Screen
result
Screen
result' <- ((ManagedPtr Screen -> Screen) -> Ptr Screen -> IO Screen
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
newObject ManagedPtr Screen -> Screen
Wnck.Screen.Screen) Ptr Screen
result
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
space
Screen -> IO Screen
forall (m :: * -> *) a. Monad m => a -> m a
return Screen
result'
#if defined(ENABLE_OVERLOADING)
data WorkspaceGetScreenMethodInfo
instance (signature ~ (m Wnck.Screen.Screen), MonadIO m, IsWorkspace a) => O.OverloadedMethod WorkspaceGetScreenMethodInfo a signature where
overloadedMethod = workspaceGetScreen
instance O.OverloadedMethodInfo WorkspaceGetScreenMethodInfo a where
overloadedMethodInfo = O.MethodInfo {
O.overloadedMethodName = "GI.Wnck.Objects.Workspace.workspaceGetScreen",
O.overloadedMethodURL = "https://hackage.haskell.org/package/gi-wnck-3.0.10/docs/GI-Wnck-Objects-Workspace.html#v:workspaceGetScreen"
}
#endif
foreign import ccall "wnck_workspace_get_viewport_x" wnck_workspace_get_viewport_x ::
Ptr Workspace ->
IO Int32
workspaceGetViewportX ::
(B.CallStack.HasCallStack, MonadIO m, IsWorkspace a) =>
a
-> m Int32
workspaceGetViewportX :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsWorkspace a) =>
a -> m Int32
workspaceGetViewportX a
space = IO Int32 -> m Int32
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Int32 -> m Int32) -> IO Int32 -> m Int32
forall a b. (a -> b) -> a -> b
$ do
Ptr Workspace
space' <- a -> IO (Ptr Workspace)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
space
Int32
result <- Ptr Workspace -> IO Int32
wnck_workspace_get_viewport_x Ptr Workspace
space'
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
space
Int32 -> IO Int32
forall (m :: * -> *) a. Monad m => a -> m a
return Int32
result
#if defined(ENABLE_OVERLOADING)
data WorkspaceGetViewportXMethodInfo
instance (signature ~ (m Int32), MonadIO m, IsWorkspace a) => O.OverloadedMethod WorkspaceGetViewportXMethodInfo a signature where
overloadedMethod = workspaceGetViewportX
instance O.OverloadedMethodInfo WorkspaceGetViewportXMethodInfo a where
overloadedMethodInfo = O.MethodInfo {
O.overloadedMethodName = "GI.Wnck.Objects.Workspace.workspaceGetViewportX",
O.overloadedMethodURL = "https://hackage.haskell.org/package/gi-wnck-3.0.10/docs/GI-Wnck-Objects-Workspace.html#v:workspaceGetViewportX"
}
#endif
foreign import ccall "wnck_workspace_get_viewport_y" wnck_workspace_get_viewport_y ::
Ptr Workspace ->
IO Int32
workspaceGetViewportY ::
(B.CallStack.HasCallStack, MonadIO m, IsWorkspace a) =>
a
-> m Int32
workspaceGetViewportY :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsWorkspace a) =>
a -> m Int32
workspaceGetViewportY a
space = IO Int32 -> m Int32
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Int32 -> m Int32) -> IO Int32 -> m Int32
forall a b. (a -> b) -> a -> b
$ do
Ptr Workspace
space' <- a -> IO (Ptr Workspace)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
space
Int32
result <- Ptr Workspace -> IO Int32
wnck_workspace_get_viewport_y Ptr Workspace
space'
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
space
Int32 -> IO Int32
forall (m :: * -> *) a. Monad m => a -> m a
return Int32
result
#if defined(ENABLE_OVERLOADING)
data WorkspaceGetViewportYMethodInfo
instance (signature ~ (m Int32), MonadIO m, IsWorkspace a) => O.OverloadedMethod WorkspaceGetViewportYMethodInfo a signature where
overloadedMethod = workspaceGetViewportY
instance O.OverloadedMethodInfo WorkspaceGetViewportYMethodInfo a where
overloadedMethodInfo = O.MethodInfo {
O.overloadedMethodName = "GI.Wnck.Objects.Workspace.workspaceGetViewportY",
O.overloadedMethodURL = "https://hackage.haskell.org/package/gi-wnck-3.0.10/docs/GI-Wnck-Objects-Workspace.html#v:workspaceGetViewportY"
}
#endif
foreign import ccall "wnck_workspace_get_width" wnck_workspace_get_width ::
Ptr Workspace ->
IO Int32
workspaceGetWidth ::
(B.CallStack.HasCallStack, MonadIO m, IsWorkspace a) =>
a
-> m Int32
workspaceGetWidth :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsWorkspace a) =>
a -> m Int32
workspaceGetWidth a
space = IO Int32 -> m Int32
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Int32 -> m Int32) -> IO Int32 -> m Int32
forall a b. (a -> b) -> a -> b
$ do
Ptr Workspace
space' <- a -> IO (Ptr Workspace)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
space
Int32
result <- Ptr Workspace -> IO Int32
wnck_workspace_get_width Ptr Workspace
space'
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
space
Int32 -> IO Int32
forall (m :: * -> *) a. Monad m => a -> m a
return Int32
result
#if defined(ENABLE_OVERLOADING)
data WorkspaceGetWidthMethodInfo
instance (signature ~ (m Int32), MonadIO m, IsWorkspace a) => O.OverloadedMethod WorkspaceGetWidthMethodInfo a signature where
overloadedMethod = workspaceGetWidth
instance O.OverloadedMethodInfo WorkspaceGetWidthMethodInfo a where
overloadedMethodInfo = O.MethodInfo {
O.overloadedMethodName = "GI.Wnck.Objects.Workspace.workspaceGetWidth",
O.overloadedMethodURL = "https://hackage.haskell.org/package/gi-wnck-3.0.10/docs/GI-Wnck-Objects-Workspace.html#v:workspaceGetWidth"
}
#endif
foreign import ccall "wnck_workspace_is_virtual" wnck_workspace_is_virtual ::
Ptr Workspace ->
IO CInt
workspaceIsVirtual ::
(B.CallStack.HasCallStack, MonadIO m, IsWorkspace a) =>
a
-> m Bool
workspaceIsVirtual :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsWorkspace a) =>
a -> m Bool
workspaceIsVirtual a
space = IO Bool -> m Bool
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Bool -> m Bool) -> IO Bool -> m Bool
forall a b. (a -> b) -> a -> b
$ do
Ptr Workspace
space' <- a -> IO (Ptr Workspace)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
space
CInt
result <- Ptr Workspace -> IO CInt
wnck_workspace_is_virtual Ptr Workspace
space'
let result' :: Bool
result' = (CInt -> CInt -> Bool
forall a. Eq a => a -> a -> Bool
/= CInt
0) CInt
result
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
space
Bool -> IO Bool
forall (m :: * -> *) a. Monad m => a -> m a
return Bool
result'
#if defined(ENABLE_OVERLOADING)
data WorkspaceIsVirtualMethodInfo
instance (signature ~ (m Bool), MonadIO m, IsWorkspace a) => O.OverloadedMethod WorkspaceIsVirtualMethodInfo a signature where
overloadedMethod = workspaceIsVirtual
instance O.OverloadedMethodInfo WorkspaceIsVirtualMethodInfo a where
overloadedMethodInfo = O.MethodInfo {
O.overloadedMethodName = "GI.Wnck.Objects.Workspace.workspaceIsVirtual",
O.overloadedMethodURL = "https://hackage.haskell.org/package/gi-wnck-3.0.10/docs/GI-Wnck-Objects-Workspace.html#v:workspaceIsVirtual"
}
#endif