gi-gdk-4.0.2: Gdk bindings
CopyrightWill Thompson Iñaki García Etxebarria and Jonas Platte
LicenseLGPL-2.1
MaintainerIñaki García Etxebarria
Safe HaskellNone
LanguageHaskell2010

GI.Gdk.Objects.Texture

Description

The GdkTexture structure contains only private data.

Synopsis

Exported types

newtype Texture Source #

Memory-managed wrapper type.

Constructors

Texture (ManagedPtr Texture) 

Instances

Instances details
Eq Texture Source # 
Instance details

Defined in GI.Gdk.Objects.Texture

Methods

(==) :: Texture -> Texture -> Bool #

(/=) :: Texture -> Texture -> Bool #

IsGValue Texture Source #

Convert Texture to and from GValue with toGValue and fromGValue.

Instance details

Defined in GI.Gdk.Objects.Texture

ManagedPtrNewtype Texture Source # 
Instance details

Defined in GI.Gdk.Objects.Texture

TypedObject Texture Source # 
Instance details

Defined in GI.Gdk.Objects.Texture

Methods

glibType :: IO GType #

GObject Texture Source # 
Instance details

Defined in GI.Gdk.Objects.Texture

HasParentTypes Texture Source # 
Instance details

Defined in GI.Gdk.Objects.Texture

type ParentTypes Texture Source # 
Instance details

Defined in GI.Gdk.Objects.Texture

type ParentTypes Texture = '[Object, Paintable]

class (GObject o, IsDescendantOf Texture o) => IsTexture o Source #

Type class for types which can be safely cast to Texture, for instance with toTexture.

Instances

Instances details
(GObject o, IsDescendantOf Texture o) => IsTexture o Source # 
Instance details

Defined in GI.Gdk.Objects.Texture

toTexture :: (MonadIO m, IsTexture o) => o -> m Texture Source #

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

Methods

Overloaded methods

download

textureDownload Source #

Arguments

:: (HasCallStack, MonadIO m, IsTexture a) 
=> a

texture: a Texture

-> Ptr Word8

data: pointer to enough memory to be filled with the downloaded data of texture

-> Word64

stride: rowstride in bytes

-> m () 

Downloads the texture into local memory. This may be an expensive operation, as the actual texture data may reside on a GPU or on a remote display server.

The data format of the downloaded data is equivalent to FormatArgb32, so every downloaded pixel requires 4 bytes of memory.

Downloading a texture into a Cairo image surface:

C code

surface = cairo_image_surface_create (CAIRO_FORMAT_ARGB32,
                                      gdk_texture_get_width (texture),
                                      gdk_texture_get_height (texture));
gdk_texture_download (texture,
                      cairo_image_surface_get_data (surface),
                      cairo_image_surface_get_stride (surface));
cairo_surface_mark_dirty (surface);

getHeight

textureGetHeight Source #

Arguments

:: (HasCallStack, MonadIO m, IsTexture a) 
=> a

texture: a Texture

-> m Int32

Returns: the height of the Texture

Returns the height of the texture.

getWidth

textureGetWidth Source #

Arguments

:: (HasCallStack, MonadIO m, IsTexture a) 
=> a

texture: a Texture

-> m Int32

Returns: the width of the Texture

Returns the width of texture.

newForPixbuf

textureNewForPixbuf Source #

Arguments

:: (HasCallStack, MonadIO m, IsPixbuf a) 
=> a

pixbuf: a Pixbuf

-> m Texture

Returns: a new Texture

Creates a new texture object representing the GdkPixbuf.

newFromFile

textureNewFromFile Source #

Arguments

:: (HasCallStack, MonadIO m, IsFile a) 
=> a

file: File to load

-> m Texture

Returns: A newly-created Texture or Nothing if an error occured. (Can throw GError)

Creates a new texture by loading an image from a file. The file format is detected automatically. If Nothing is returned, then error will be set.

newFromResource

textureNewFromResource Source #

Arguments

:: (HasCallStack, MonadIO m) 
=> Text

resourcePath: the path of the resource file

-> m Texture

Returns: A newly-created texture

Creates a new texture by loading an image from a resource. The file format is detected automatically.

It is a fatal error if resourcePath does not specify a valid image resource and the program will abort if that happens. If you are unsure about the validity of a resource, use textureNewFromFile to load it.

saveToPng

textureSaveToPng Source #

Arguments

:: (HasCallStack, MonadIO m, IsTexture a) 
=> a

texture: a Texture

-> Text

filename: the filename to store to

-> m Bool

Returns: True if saving succeeded, False on failure.

Store the given texture to the filename as a PNG file.

This is a utility function intended for debugging and testing. If you want more control over formats, proper error handling or want to store to a File or other location, you might want to look into using the gdk-pixbuf library.

Properties

height

The height of the texture.

constructTextureHeight :: (IsTexture o, MonadIO m) => Int32 -> m (GValueConstruct o) Source #

Construct a GValueConstruct with valid value for the “height” property. This is rarely needed directly, but it is used by new.

getTextureHeight :: (MonadIO m, IsTexture o) => o -> m Int32 Source #

Get the value of the “height” property. When overloading is enabled, this is equivalent to

get texture #height

width

The width of the texture.

constructTextureWidth :: (IsTexture o, MonadIO m) => Int32 -> m (GValueConstruct o) Source #

Construct a GValueConstruct with valid value for the “width” property. This is rarely needed directly, but it is used by new.

getTextureWidth :: (MonadIO m, IsTexture o) => o -> m Int32 Source #

Get the value of the “width” property. When overloading is enabled, this is equivalent to

get texture #width