comparison 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
comparison
equal deleted inserted replaced
27147:ef9e68020265 29782:3882d419e628
99 99
100 g_free(xfer->who); 100 g_free(xfer->who);
101 g_free(xfer->filename); 101 g_free(xfer->filename);
102 g_free(xfer->remote_ip); 102 g_free(xfer->remote_ip);
103 g_free(xfer->local_filename); 103 g_free(xfer->local_filename);
104 g_free(xfer->thumbnail_data);
104 105
105 PURPLE_DBUS_UNREGISTER_POINTER(xfer); 106 PURPLE_DBUS_UNREGISTER_POINTER(xfer);
106 g_free(xfer); 107 g_free(xfer);
107 xfers = g_list_remove(xfers, xfer); 108 xfers = g_list_remove(xfers, xfer);
108 } 109 }
1285 ui_ops = purple_xfer_get_ui_ops(xfer); 1286 ui_ops = purple_xfer_get_ui_ops(xfer);
1286 if (ui_ops != NULL && ui_ops->update_progress != NULL) 1287 if (ui_ops != NULL && ui_ops->update_progress != NULL)
1287 ui_ops->update_progress(xfer, purple_xfer_get_progress(xfer)); 1288 ui_ops->update_progress(xfer, purple_xfer_get_progress(xfer));
1288 } 1289 }
1289 1290
1291 const void *
1292 purple_xfer_get_thumbnail_data(const PurpleXfer *xfer)
1293 {
1294 return xfer->thumbnail_data;
1295 }
1296
1297 gsize
1298 purple_xfer_get_thumbnail_size(const PurpleXfer *xfer)
1299 {
1300 return xfer->thumbnail_size;
1301 }
1302
1303 void
1304 purple_xfer_set_thumbnail(PurpleXfer *xfer, gconstpointer thumbnail,
1305 gsize size)
1306 {
1307 if (thumbnail && size > 0) {
1308 xfer->thumbnail_data = g_memdup(thumbnail, size);
1309 xfer->thumbnail_size = size;
1310 }
1311 }
1312
1313 void
1314 purple_xfer_prepare_thumbnail(PurpleXfer *xfer)
1315 {
1316 if (xfer->ui_ops->add_thumbnail) {
1317 xfer->ui_ops->add_thumbnail(xfer);
1318 }
1319 }
1290 1320
1291 /************************************************************************** 1321 /**************************************************************************
1292 * File Transfer Subsystem API 1322 * File Transfer Subsystem API
1293 **************************************************************************/ 1323 **************************************************************************/
1294 void * 1324 void *