GnomeThumbnail

GnomeThumbnail

Functions

Types and Values

Includes

#include <libgnomeui/libgnomeui.h>

Description

Functions

gnome_thumbnail_factory_new ()

GnomeThumbnailFactory *
gnome_thumbnail_factory_new (GnomeThumbnailSize size);

Creates a new GnomeThumbnailFactory.

This function must be called on the main thread.

Parameters

size

The thumbnail size to use

 

Returns

a new GnomeThumbnailFactory

Since: 2.2


gnome_thumbnail_factory_lookup ()

char *
gnome_thumbnail_factory_lookup (GnomeThumbnailFactory *factory,
                                const char *uri,
                                time_t mtime);

Tries to locate an existing thumbnail for the file specified.

Usage of this function is threadsafe.

Parameters

factory

a GnomeThumbnailFactory

 

uri

the uri of a file

 

mtime

the mtime of the file

 

Returns

The absolute path of the thumbnail, or NULL if none exist.

Since: 2.2


gnome_thumbnail_factory_has_valid_failed_thumbnail ()

gboolean
gnome_thumbnail_factory_has_valid_failed_thumbnail
                               (GnomeThumbnailFactory *factory,
                                const char *uri,
                                time_t mtime);

Tries to locate an failed thumbnail for the file specified. Writing and looking for failed thumbnails is important to avoid to try to thumbnail e.g. broken images several times.

Usage of this function is threadsafe.

Parameters

factory

a GnomeThumbnailFactory

 

uri

the uri of a file

 

mtime

the mtime of the file

 

Returns

TRUE if there is a failed thumbnail for the file.

Since: 2.2


gnome_thumbnail_factory_can_thumbnail ()

gboolean
gnome_thumbnail_factory_can_thumbnail (GnomeThumbnailFactory *factory,
                                       const char *uri,
                                       const char *mime_type,
                                       time_t mtime);

Returns TRUE if this GnomeIconFactory can (at least try) to thumbnail this file. Thumbnails or files with failed thumbnails won't be thumbnailed.

Usage of this function is threadsafe.

Parameters

factory

a GnomeThumbnailFactory

 

uri

the uri of a file

 

mime_type

the mime type of the file

 

mtime

the mtime of the file

 

Returns

TRUE if the file can be thumbnailed.

Since: 2.2


gnome_thumbnail_factory_generate_thumbnail ()

GdkPixbuf *
gnome_thumbnail_factory_generate_thumbnail
                               (GnomeThumbnailFactory *factory,
                                const char *uri,
                                const char *mime_type);

Tries to generate a thumbnail for the specified file. If it succeeds it returns a pixbuf that can be used as a thumbnail.

Usage of this function is threadsafe.

Parameters

factory

a GnomeThumbnailFactory

 

uri

the uri of a file

 

mime_type

the mime type of the file

 

Returns

thumbnail pixbuf if thumbnailing succeeded, NULL otherwise.

Since: 2.2


gnome_thumbnail_factory_save_thumbnail ()

void
gnome_thumbnail_factory_save_thumbnail
                               (GnomeThumbnailFactory *factory,
                                GdkPixbuf *thumbnail,
                                const char *uri,
                                time_t original_mtime);

Saves thumbnail at the right place. If the save fails a failed thumbnail is written.

Usage of this function is threadsafe.

Parameters

factory

a GnomeThumbnailFactory

 

thumbnail

the thumbnail as a pixbuf

 

uri

the uri of a file

 

original_mtime

the modification time of the original file

 

Since: 2.2


gnome_thumbnail_factory_create_failed_thumbnail ()

void
gnome_thumbnail_factory_create_failed_thumbnail
                               (GnomeThumbnailFactory *factory,
                                const char *uri,
                                time_t mtime);

Creates a failed thumbnail for the file so that we don't try to re-thumbnail the file later.

Usage of this function is threadsafe.

Parameters

factory

a GnomeThumbnailFactory

 

uri

the uri of a file

 

mtime

the modification time of the file

 

Since: 2.2


gnome_thumbnail_scale_down_pixbuf ()

GdkPixbuf *
gnome_thumbnail_scale_down_pixbuf (GdkPixbuf *pixbuf,
                                   int dest_width,
                                   int dest_height);

Scales the pixbuf to the desired size. This function is a lot faster than gdk-pixbuf when scaling down by large amounts.

Parameters

pixbuf

a GdkPixbuf

 

dest_width

the desired new width

 

dest_height

the desired new height

 

Returns

a scaled pixbuf

Since: 2.2


gnome_thumbnail_has_uri ()

gboolean
gnome_thumbnail_has_uri (GdkPixbuf *pixbuf,
                         const char *uri);

Returns whether the thumbnail has the correct uri embedded in the Thumb::URI option in the png.

Parameters

pixbuf

an loaded thumbnail pixbuf

 

uri

a uri

 

Returns

TRUE if the thumbnail is for uri

Since: 2.2


gnome_thumbnail_is_valid ()

gboolean
gnome_thumbnail_is_valid (GdkPixbuf *pixbuf,
                          const char *uri,
                          time_t mtime);

Returns whether the thumbnail has the correct uri and mtime embedded in the png options.

Parameters

pixbuf

an loaded thumbnail GdkPixbuf

 

uri

a uri

 

mtime

the mtime

 

Returns

TRUE if the thumbnail has the right uri and mtime

Since: 2.2


gnome_thumbnail_md5 ()

char *
gnome_thumbnail_md5 (const char *uri);

Calculates the MD5 checksum of the uri. This can be useful if you want to manually handle thumbnail files.

Parameters

uri

an uri

 

Returns

A string with the MD5 digest of the uri string.

Since: 2.2


gnome_thumbnail_path_for_uri ()

char *
gnome_thumbnail_path_for_uri (const char *uri,
                              GnomeThumbnailSize size);

Returns the filename that a thumbnail of size size for uri would have.

Parameters

uri

an uri

 

size

a thumbnail size

 

Returns

an absolute filename

Since: 2.2

Types and Values

struct GnomeThumbnailFactory

struct GnomeThumbnailFactory {
	GObject parent;
	
	GnomeThumbnailFactoryPrivate *priv;
};

enum GnomeThumbnailSize

Members

GNOME_THUMBNAIL_SIZE_NORMAL

   

GNOME_THUMBNAIL_SIZE_LARGE

   

struct GnomeThumbnailFactoryClass

struct GnomeThumbnailFactoryClass {
	GObjectClass parent;
};