Mercurial > pidgin
diff libpurple/ft.c @ 29782:3882d419e628
Added a skeleton for functions to set and get a thumbnail image associated
with a file transfer and provision for a UI op to let a UI "manufacture"
a thumbnail.
Refs #9476
author | Marcus Lundblad <ml@update.uu.se> |
---|---|
date | Tue, 23 Jun 2009 21:33:10 +0000 |
parents | 0c796a1950b7 |
children | d0588e403877 |
line wrap: on
line diff
--- a/libpurple/ft.c Mon Jun 22 21:31:54 2009 +0000 +++ b/libpurple/ft.c Tue Jun 23 21:33:10 2009 +0000 @@ -101,6 +101,7 @@ g_free(xfer->filename); g_free(xfer->remote_ip); g_free(xfer->local_filename); + g_free(xfer->thumbnail_data); PURPLE_DBUS_UNREGISTER_POINTER(xfer); g_free(xfer); @@ -1287,6 +1288,35 @@ ui_ops->update_progress(xfer, purple_xfer_get_progress(xfer)); } +const void * +purple_xfer_get_thumbnail_data(const PurpleXfer *xfer) +{ + return xfer->thumbnail_data; +} + +gsize +purple_xfer_get_thumbnail_size(const PurpleXfer *xfer) +{ + return xfer->thumbnail_size; +} + +void +purple_xfer_set_thumbnail(PurpleXfer *xfer, gconstpointer thumbnail, + gsize size) +{ + if (thumbnail && size > 0) { + xfer->thumbnail_data = g_memdup(thumbnail, size); + xfer->thumbnail_size = size; + } +} + +void +purple_xfer_prepare_thumbnail(PurpleXfer *xfer) +{ + if (xfer->ui_ops->add_thumbnail) { + xfer->ui_ops->add_thumbnail(xfer); + } +} /************************************************************************** * File Transfer Subsystem API