gi-gdk4-4.0.10: Gdk 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.Gdk.Objects.VulkanContext

Contents

- Exported types
- Methods
- Signals
  - imagesUpdated

Description

Represents the platform-specific Vulkan draw context.

`GdkVulkanContext`s are created for a surface using `surfaceCreateVulkanContext`, and the context will match the characteristics of the surface.

Support for `GdkVulkanContext` is platform-specific and context creation can fail, returning `Nothing` context.

Synopsis

- newtype VulkanContext = VulkanContext (ManagedPtr VulkanContext)
- class (GObject o, IsDescendantOf VulkanContext o) => IsVulkanContext o
- toVulkanContext :: (MonadIO m, IsVulkanContext o) => o -> m VulkanContext
- type VulkanContextImagesUpdatedCallback = IO ()
- afterVulkanContextImagesUpdated :: (IsVulkanContext a, MonadIO m) => a -> ((?self :: a) => VulkanContextImagesUpdatedCallback) -> m SignalHandlerId
- onVulkanContextImagesUpdated :: (IsVulkanContext a, MonadIO m) => a -> ((?self :: a) => VulkanContextImagesUpdatedCallback) -> m SignalHandlerId

# Exported types

newtype VulkanContext Source #

Memory-managed wrapper type.

Constructors

VulkanContext (ManagedPtr VulkanContext) |

#### Instances

Instances details

Eq VulkanContext Source # |
Instance details Defined in GI.Gdk.Objects.VulkanContext Methods (==) :: VulkanContext -> VulkanContext -> Bool Source # (/=) :: VulkanContext -> VulkanContext -> Bool Source #
GObject VulkanContext Source # |
Instance details Defined in GI.Gdk.Objects.VulkanContext
ManagedPtrNewtype VulkanContext Source # |
Instance details Defined in GI.Gdk.Objects.VulkanContext Methods toManagedPtr :: VulkanContext -> ManagedPtr VulkanContext Source #
TypedObject VulkanContext Source # |
Instance details Defined in GI.Gdk.Objects.VulkanContext Methods glibType :: IO GType Source #
HasParentTypes VulkanContext Source # |
Instance details Defined in GI.Gdk.Objects.VulkanContext
IsGValue (Maybe VulkanContext) Source # | Convert `VulkanContext` to and from `GValue`. See `toGValue` and `fromGValue`.
Instance details Defined in GI.Gdk.Objects.VulkanContext Methods gvalueGType_ :: IO GType Source # gvalueSet_ :: Ptr GValue -> Maybe VulkanContext -> IO () Source # gvalueGet_ :: Ptr GValue -> IO (Maybe VulkanContext) Source #
type ParentTypes VulkanContext Source # |
Instance details Defined in GI.Gdk.Objects.VulkanContext type ParentTypes VulkanContext = '[DrawContext, Object]

class (GObject o, IsDescendantOf VulkanContext o) => IsVulkanContext o Source #

Type class for types which can be safely cast to `VulkanContext`, for instance with `toVulkanContext`.

#### Instances

Instances details

(GObject o, IsDescendantOf VulkanContext o) => IsVulkanContext o Source # |
Instance details Defined in GI.Gdk.Objects.VulkanContext

toVulkanContext :: (MonadIO m, IsVulkanContext o) => o -> m VulkanContext Source #

Cast to `VulkanContext`, 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

beginFrame, bindProperty, bindPropertyFull, endFrame, forceFloating, freezeNotify, getv, isFloating, isInFrame, notify, notifyByPspec, ref, refSink, runDispose, stealData, stealQdata, thawNotify, unref, watchClosure.

#### Getters

getData, getDisplay, getFrameRegion, getProperty, getQdata, getSurface.

#### Setters

setData, setDataFull, setProperty.

# Signals

## imagesUpdated

type VulkanContextImagesUpdatedCallback = IO () Source #

Emitted when the images managed by this context have changed.

Usually this means that the swapchain had to be recreated, for example in response to a change of the surface size.

afterVulkanContextImagesUpdated :: (IsVulkanContext a, MonadIO m) => a -> ((?self :: a) => VulkanContextImagesUpdatedCallback) -> m SignalHandlerId Source #

Connect a signal handler for the imagesUpdated signal, to be run after the default handler. When overloading is enabled, this is equivalent to

    after vulkanContext #imagesUpdated callback

By default the object invoking the signal is not passed to the callback. If you need to access it, you can use the implit `?self` parameter. Note that this requires activating the `ImplicitParams` GHC extension.

onVulkanContextImagesUpdated :: (IsVulkanContext a, MonadIO m) => a -> ((?self :: a) => VulkanContextImagesUpdatedCallback) -> m SignalHandlerId Source #

Connect a signal handler for the imagesUpdated signal, to be run before the default handler. When overloading is enabled, this is equivalent to

    on vulkanContext #imagesUpdated callback