gi-gsk-4.0.9: Gsk bindings

Copyright | Will Thompson and Iñaki García Etxebarria
License | LGPL-2.1
Maintainer | Iñaki García Etxebarria
Safe Haskell | None
Language | Haskell2010

GI.Gsk.Objects.IsolationNode

Contents

- Exported types
- Methods
  - getChild
  - getIsolations
  - new

Description

A render node that isolates its child from surrounding rendernodes.

Since: 4.22

Synopsis

- newtype IsolationNode = IsolationNode (ManagedPtr IsolationNode)
- class (BoxedPtr o, TypedObject o, IsDescendantOf IsolationNode o) => IsIsolationNode o
- toIsolationNode :: (MonadIO m, IsIsolationNode o) => o -> m IsolationNode
- isolationNodeGetChild :: (HasCallStack, MonadIO m, IsIsolationNode a) => a -> m RenderNode
- isolationNodeGetIsolations :: (HasCallStack, MonadIO m, IsIsolationNode a) => a -> m [Isolation]
- isolationNodeNew :: (HasCallStack, MonadIO m, IsRenderNode a) => a -> [Isolation] -> m IsolationNode

# Exported types

newtype IsolationNode Source #

Memory-managed wrapper type.

Constructors

IsolationNode (ManagedPtr IsolationNode) |

#### Instances

Instances details

Eq IsolationNode Source # |
Instance details Defined in GI.Gsk.Objects.IsolationNode Methods (==) :: IsolationNode -> IsolationNode -> Bool Source # (/=) :: IsolationNode -> IsolationNode -> Bool Source #
BoxedPtr IsolationNode Source # |
Instance details Defined in GI.Gsk.Objects.IsolationNode Methods boxedPtrCopy :: IsolationNode -> IO IsolationNode Source # boxedPtrFree :: IsolationNode -> IO () Source #
ManagedPtrNewtype IsolationNode Source # |
Instance details Defined in GI.Gsk.Objects.IsolationNode Methods toManagedPtr :: IsolationNode -> ManagedPtr IsolationNode Source #
TypedObject IsolationNode Source # |
Instance details Defined in GI.Gsk.Objects.IsolationNode Methods glibType :: IO GType Source #
HasParentTypes IsolationNode Source # |
Instance details Defined in GI.Gsk.Objects.IsolationNode
type ParentTypes IsolationNode Source # |
Instance details Defined in GI.Gsk.Objects.IsolationNode type ParentTypes IsolationNode = '[RenderNode]

class (BoxedPtr o, TypedObject o, IsDescendantOf IsolationNode o) => IsIsolationNode o Source #

Type class for types which can be safely cast to `IsolationNode`, for instance with `toIsolationNode`.

#### Instances

Instances details

(BoxedPtr o, TypedObject o, IsDescendantOf IsolationNode o) => IsIsolationNode o Source # |
Instance details Defined in GI.Gsk.Objects.IsolationNode

toIsolationNode :: (MonadIO m, IsIsolationNode o) => o -> m IsolationNode Source #

Cast to `IsolationNode`, for types for which this is known to be safe. For general casts, use `castTo`.

# Methods

### Click to display all available methods, including inherited ones

Expand

#### Methods

draw, ref, serialize, unref, writeToFile.

#### Getters

getBounds, getChild, getChildren, getIsolations, getNodeType, getOpaqueRect.

#### Setters

None.

## getChild

isolationNodeGetChild Source #

Arguments

:: (HasCallStack, MonadIO m, IsIsolationNode a) |
=> a | `node`: an isolation `GskRenderNode`
-> m RenderNode | Returns: the child `GskRenderNode`

Gets the child node that is getting drawn by the given `node`.

Since: 4.22

## getIsolations

isolationNodeGetIsolations Source #

Arguments

:: (HasCallStack, MonadIO m, IsIsolationNode a) |
=> a | `node`: an isolation `GskRenderNode`
-> m [Isolation] | Returns: the isolation features

Gets the isolation features that are enforced by this node.

Since: 4.22

## new

isolationNodeNew Source #

Arguments

:: (HasCallStack, MonadIO m, IsRenderNode a) |
=> a | `child`: The child
-> [Isolation] | `isolations`: features to isolate
-> m IsolationNode | Returns: A new `GskRenderNode`

Creates a `GskRenderNode` that isolates the drawing operations of the child from surrounding ones.

You can express "everything but these flags" in a forward compatible way by using bit math: `GSK_ISOLATION_ALL & ~(GSK_ISOLATION_BACKGROUND | GSK_ISOLATION_COPY_PASTE)` will isolate everything but background and copy/paste.

For the available isolations, see [flags`gsk`.Isolation].

Since: 4.22