Gnome2-VFS

 view release on metacpan or  search on metacpan

xs/GnomeVFSAsync.xs  view on Meta::CPAN

	/* vfs2perl_async_callbacks_add (RETVAL, callback); */

	/* FIXME, FIXME, FIXME: what about callback destruction? */
    OUTPUT:
	RETVAL

##  void gnome_vfs_async_load_directory_uri (GnomeVFSAsyncHandle **handle_return, GnomeVFSURI *uri, GnomeVFSFileInfoOptions options, guint items_per_notification, int priority, GnomeVFSAsyncDirectoryLoadCallback callback, gpointer callback_data) 
GnomeVFSAsyncHandle *
gnome_vfs_async_load_directory_uri (class, uri, options, items_per_notification, priority, func, data=NULL)
	GnomeVFSURI *uri
	GnomeVFSFileInfoOptions options
	guint items_per_notification
	int priority
	SV *func
	SV *data
    PREINIT:
	GPerlCallback *callback;
    CODE:
	callback = vfs2perl_async_directory_load_callback_create (func, data);

	gnome_vfs_async_load_directory_uri (&RETVAL,
	                                    uri,
	                                    options,
                                            items_per_notification,
	                                    priority,
	                                    (GnomeVFSAsyncDirectoryLoadCallback)
	                                      vfs2perl_async_directory_load_callback,
	                                    callback);

	/* vfs2perl_async_callbacks_add (RETVAL, callback); */

	/* FIXME, FIXME, FIXME: what about callback destruction? */
    OUTPUT:
	RETVAL

=for apidoc

Returns a GnomeVFSResult and a GnomeVFSAsyncHandle.

=cut
##  GnomeVFSResult gnome_vfs_async_xfer (GnomeVFSAsyncHandle **handle_return, GList *source_uri_list, GList *target_uri_list, GnomeVFSXferOptions xfer_options, GnomeVFSXferErrorMode error_mode, GnomeVFSXferOverwriteMode overwrite_mode, int priority, ...
void
gnome_vfs_async_xfer (class, source_ref, target_ref, xfer_options, error_mode, overwrite_mode, priority, func_update, data_update, func_sync, data_sync=NULL)
	SV *source_ref
	SV *target_ref
	GnomeVFSXferOptions xfer_options
	GnomeVFSXferErrorMode error_mode
	GnomeVFSXferOverwriteMode overwrite_mode
	int priority
	SV *func_update
	SV *data_update
	SV *func_sync
	SV *data_sync
    PREINIT:
	GnomeVFSResult result;
	GnomeVFSAsyncHandle *handle_return;
	GList *source_uri_list;
	GList *target_uri_list;
	GPerlCallback *callback_update;
	GPerlCallback *callback_sync;
    PPCODE:
	source_uri_list = SvGnomeVFSURIGList (source_ref);
	target_uri_list = SvGnomeVFSURIGList (target_ref);

	callback_update = vfs2perl_async_xfer_progress_callback_create (func_update, data_update);
	callback_sync = vfs2perl_xfer_progress_callback_create (func_sync, data_sync);

	result = gnome_vfs_async_xfer (&handle_return,
	                               source_uri_list,
	                               target_uri_list,
	                               xfer_options,
	                               error_mode,
	                               overwrite_mode,
	                               priority,
	                               (GnomeVFSAsyncXferProgressCallback)
	                                 vfs2perl_async_xfer_progress_callback,
	                               callback_update,
	                               (GnomeVFSXferProgressCallback)
	                                 vfs2perl_xfer_progress_callback,
	                               callback_sync);

	/* vfs2perl_async_callbacks_add (handle_return, callback_update);
	vfs2perl_async_callbacks_add (handle_return, callback_sync); */

	g_list_free (source_uri_list);
	g_list_free (target_uri_list);

	EXTEND (sp, 2);
	PUSHs (sv_2mortal (newSVGnomeVFSResult (result)));
	PUSHs (sv_2mortal (newSVGnomeVFSAsyncHandle (handle_return)));

	/* FIXME, FIXME, FIXME: what about callback destruction? */

##  void gnome_vfs_async_find_directory (GnomeVFSAsyncHandle **handle_return, GList *near_uri_list, GnomeVFSFindDirectoryKind kind, gboolean create_if_needed, gboolean find_if_needed, guint permissions, int priority, GnomeVFSAsyncFindDirectoryCallbac...
GnomeVFSAsyncHandle *
gnome_vfs_async_find_directory (class, near_ref, kind, create_if_needed, find_if_needed, permissions, priority, func, data=NULL)
	SV *near_ref
	GnomeVFSFindDirectoryKind kind
	gboolean create_if_needed
	gboolean find_if_needed
	guint permissions
	int priority
	SV *func
	SV *data
    PREINIT:
	GPerlCallback *callback;
	GList *near_uri_list;
    CODE:
	near_uri_list = SvGnomeVFSURIGList (near_ref);
	callback = vfs2perl_async_find_directory_callback_create (func, data);

	gnome_vfs_async_find_directory (&RETVAL,
	                                near_uri_list,
	                                kind,
	                                create_if_needed,
	                                find_if_needed,
	                                permissions,
	                                priority,
	                                (GnomeVFSAsyncFindDirectoryCallback)
	                                  vfs2perl_async_find_directory_callback,
	                                callback);



( run in 0.783 second using v1.01-cache-2.11-cpan-5511b514fd6 )