st-texture-cache

st-texture-cache

Functions

Types and Values

Description

Functions

st_texture_cache_get_default ()

StTextureCache *
st_texture_cache_get_default (void);

Returns

The global texture cache.

[transfer none]


st_texture_cache_load_sliced_image ()

ClutterActor *
st_texture_cache_load_sliced_image (StTextureCache *cache,
                                    GFile *file,
                                    gint grid_width,
                                    gint grid_height,
                                    gint paint_scale,
                                    gfloat resource_scale,
                                    GFunc load_callback,
                                    gpointer user_data);

This function reads a single image file which contains multiple images internally. The image file will be divided using grid_width and grid_height ; note that the dimensions of the image loaded from path should be a multiple of the specified grid dimensions.

Parameters

cache

A StTextureCache

 

file

A GFile

 

grid_width

Width in pixels

 

grid_height

Height in pixels

 

paint_scale

Scale factor of the display

 

load_callback

Function called when the image is loaded, or NULL.

[scope async][nullable]

user_data

Data to pass to the load callback

 

Returns

A new ClutterActor.

[transfer none]


st_texture_cache_bind_cairo_surface_property ()

GIcon *
st_texture_cache_bind_cairo_surface_property
                               (StTextureCache *cache,
                                GObject *object,
                                const char *property_name);

Create a GIcon which tracks the cairo_surface_t value of a GObject property named by property_name . Unlike other methods in StTextureCache, the underlying CoglTexture is not shared by default with other invocations to this method.

If the source object is destroyed, the texture will continue to show the last value of the property.

Parameters

cache

A StTextureCache

 

object

A GObject with a property property_name of type cairo_surface_t

 

property_name

Name of a property

 

Returns

A new GIcon.

[transfer full]


st_texture_cache_load_cairo_surface_to_gicon ()

GIcon *
st_texture_cache_load_cairo_surface_to_gicon
                               (StTextureCache *cache,
                                cairo_surface_t *surface);

Create a GIcon from surface .

Parameters

cache

A StTextureCache

 

surface

A cairo_surface_t

 

Returns

A new GIcon.

[transfer full]


st_texture_cache_load_gicon ()

ClutterActor *
st_texture_cache_load_gicon (StTextureCache *cache,
                             StThemeNode *theme_node,
                             GIcon *icon,
                             gint size,
                             gint paint_scale,
                             gfloat resource_scale);

This method returns a new ClutterActor for a given GIcon. If the icon isn't loaded already, the texture will be filled asynchronously.

Parameters

cache

A StTextureCache

 

theme_node

The StThemeNode to use for colors, or NULL if the icon must not be recolored.

[nullable]

icon

the GIcon to load

 

size

Size of themed

 

paint_scale

Scale factor of display

 

resource_scale

Resource scale factor

 

Returns

A new ClutterActor for the icon, or NULL if not found.

[transfer none][nullable]


st_texture_cache_load_file_async ()

ClutterActor *
st_texture_cache_load_file_async (StTextureCache *cache,
                                  GFile *file,
                                  int available_width,
                                  int available_height,
                                  int paint_scale,
                                  gfloat resource_scale);

Asynchronously load an image. Initially, the returned texture will have a natural size of zero. At some later point, either the image will be loaded successfully and at that point size will be negotiated, or upon an error, no image will be set.

Parameters

cache

A StTextureCache

 

file

a GFile of the image file from which to create a pixbuf

 

available_width

available width for the image, can be -1 if not limited

 

available_height

available height for the image, can be -1 if not limited

 

paint_scale

scale factor of the display

 

resource_scale

Resource scale factor

 

Returns

A new ClutterActor with no image loaded initially.

[transfer none]


st_texture_cache_load_file_to_cogl_texture ()

CoglTexture *
st_texture_cache_load_file_to_cogl_texture
                               (StTextureCache *cache,
                                GFile *file,
                                gint paint_scale,
                                gfloat resource_scale);

This function synchronously loads the given file path into a COGL texture. On error, a warning is emitted and NULL is returned.

[skip]

Parameters

cache

A StTextureCache

 

file

A GFile in supported image format

 

paint_scale

Scale factor of the display

 

resource_scale

Resource scale factor

 

Returns

a new CoglTexture.

[transfer full]


st_texture_cache_load_file_to_cairo_surface ()

cairo_surface_t *
st_texture_cache_load_file_to_cairo_surface
                               (StTextureCache *cache,
                                GFile *file,
                                gint paint_scale,
                                gfloat resource_scale);

This function synchronously loads the given file path into a cairo surface. On error, a warning is emitted and NULL is returned.

Parameters

cache

A StTextureCache

 

file

A GFile in supported image format

 

paint_scale

Scale factor of the display

 

resource_scale

Resource scale factor

 

Returns

a new cairo_surface_t.

[transfer full]


StTextureCacheLoader ()

CoglTexture *
(*StTextureCacheLoader) (StTextureCache *cache,
                         const char *key,
                         void *data,
                         GError **error);

See st_texture_cache_load(). Implementations should return a texture handle for the given key, or set error .

[skip]

Parameters

cache

a StTextureCache

 

key

Unique identifier for this texture

 

data

Callback user data

 

error

A GError

 

st_texture_cache_load ()

CoglTexture *
st_texture_cache_load (StTextureCache *cache,
                       const char *key,
                       StTextureCachePolicy policy,
                       StTextureCacheLoader load,
                       void *data,
                       GError **error);

Load an arbitrary texture, caching it. The string chosen for key should be of the form "type-prefix:type-uuid". For example, "url:file:///usr/share/icons/hicolor/48x48/apps/firefox.png", or "stock-icon:gtk-ok".

[skip]

Parameters

cache

A StTextureCache

 

key

Arbitrary string used to refer to item

 

policy

Caching policy

 

load

Function to create the texture, if not already cached

 

data

User data passed to load

 

error

A GError

 

Returns

A newly-referenced handle to the texture.

[transfer full]


st_texture_cache_rescan_icon_theme ()

gboolean
st_texture_cache_rescan_icon_theme (StTextureCache *cache);

Rescan the current icon theme, if necessary.

Returns

TRUE if the icon theme has changed and needed to be reloaded.

Types and Values

ST_TYPE_TEXTURE_CACHE

#define ST_TYPE_TEXTURE_CACHE                 (st_texture_cache_get_type ())

struct StTextureCache

struct StTextureCache {
  GObject parent;

  StTextureCachePrivate *priv;
};

enum StTextureCachePolicy

Members

ST_TEXTURE_CACHE_POLICY_NONE

   

ST_TEXTURE_CACHE_POLICY_FOREVER

   

StTextureCachePrivate

typedef struct _StTextureCachePrivate StTextureCachePrivate;