RBDeviceSource

RBDeviceSource — interface for sources based on physical devices

Synopsis

#include <rb-device-source.h>

struct              RBDeviceSourceInterface;
gboolean            rb_device_source_can_eject          (RBDeviceSource *source);
void                rb_device_source_eject              (RBDeviceSource *source);
guint               rb_device_source_want_uri           (RBSource *source,
                                                         const char *uri);
gboolean            rb_device_source_uri_is_source      (RBSource *source,
                                                         const char *uri);
void                rb_device_source_set_display_details
                                                        (RBDeviceSource *source);

Description

Sources that represent physical devices should implement this interface. It exposes the ability to eject the device, and also can be used to implement some RBSource methods by using details from a GVolume or GMount accessed via 'volume' and 'mount' properties on the source object. Devices that are not based on a GVolume or GMount can still use the interface, but they must provide implementations of the can_eject and eject methods.

Details

struct RBDeviceSourceInterface

struct RBDeviceSourceInterface {
	GTypeInterface g_iface;

	gboolean (*can_eject)		(RBDeviceSource *source);
	void		(*eject)		(RBDeviceSource *source);
};


rb_device_source_can_eject ()

gboolean            rb_device_source_can_eject          (RBDeviceSource *source);


rb_device_source_eject ()

void                rb_device_source_eject              (RBDeviceSource *source);

Ejects the device that the source represents.

source :

a RBDeviceSource

rb_device_source_want_uri ()

guint               rb_device_source_want_uri           (RBSource *source,
                                                         const char *uri);

Checks whether uri identifies a path underneath the device's mount point. Should be used to implement the RBSource impl_want_uri method.

source :

a RBDeviceSource

uri :

a URI to consider

Returns :

URI match strength

rb_device_source_uri_is_source ()

gboolean            rb_device_source_uri_is_source      (RBSource *source,
                                                         const char *uri);

Returns TRUE if uri matches source. This should be used to implement the impl_uri_is_source RBSource method.

source :

a RBDeviceSource

uri :

a URI to check

Returns :

TRUE if uri matches source

rb_device_source_set_display_details ()

void                rb_device_source_set_display_details
                                                        (RBDeviceSource *source);

Sets the icon and display name for a device-based source. The details come from the mount and/or volume. This should be called in the source's constructed method.

source :

a RBDeviceSource