ThunarVfsMonitor

ThunarVfsMonitor — Portable file system monitoring class.

Functions

Types and Values

Object Hierarchy

    GObject
    ╰── ThunarVfsMonitor

Includes

#include <thunar-vfs/thunar-vfs.h>

Description

Functions

ThunarVfsMonitorCallback ()

void
(*ThunarVfsMonitorCallback) (ThunarVfsMonitor *monitor,
                             ThunarVfsMonitorHandle *handle,
                             ThunarVfsMonitorEvent event,
                             ThunarVfsPath *handle_path,
                             ThunarVfsPath *event_path,
                             gpointer user_data);

The prototype for callback functions that will be called by a ThunarVfsMonitor whenever one of its associated ThunarVfsMonitorHandles notice a change.

Parameters

monitor

a ThunarVfsMonitor.

 

handle

a ThunarVfsMonitorHandle.

 

event

the event that occurred.

 

handle_path

the ThunarVfsPath that was specified when registering the handle .

 

event_path

the ThunarVfsPath on which the event occurred.

 

user_data

the user data that was specified when registering the handle with the monitor .

 

thunar_vfs_monitor_get_default ()

ThunarVfsMonitor *
thunar_vfs_monitor_get_default (void);

Returns the shared ThunarVfsMonitor instance. The caller is responsible to call g_object_unref() on the returned object when no longer needed.

Returns

a reference to the shared ThunarVfsMonitor instance.


thunar_vfs_monitor_add_directory ()

ThunarVfsMonitorHandle *
thunar_vfs_monitor_add_directory (ThunarVfsMonitor *monitor,
                                  ThunarVfsPath *path,
                                  ThunarVfsMonitorCallback callback,
                                  gpointer user_data);

Registers path as directory for monitor . monitor will invoke callback whenever it notices a change to the directory to which path refers or any of the files within the directory.

The returned ThunarVfsMonitorHandle can be used to remove the path from monitor using thunar_vfs_monitor_remove().

Parameters

monitor

a ThunarVfsMonitor.

 

path

the ThunarVfsPath of the directory that should be watched.

 

callback

the callback function to invoke.

 

user_data

additional data to pass to callback .

 

Returns

the ThunarVfsMonitorHandle for the new watch.


thunar_vfs_monitor_add_file ()

ThunarVfsMonitorHandle *
thunar_vfs_monitor_add_file (ThunarVfsMonitor *monitor,
                             ThunarVfsPath *path,
                             ThunarVfsMonitorCallback callback,
                             gpointer user_data);

Registers path as file with monitor . monitor will then invoke callback whenever it notices a change to the file to which path refers.

The returned ThunarVfsMonitorHandle can be used to remove the path from monitor using thunar_vfs_monitor_remove().

Parameters

monitor

a ThunarVfsMonitor.

 

path

the ThunarVfsPath of the file that should be watched.

 

callback

the callback function to invoke.

 

user_data

additional data to pass to callback .

 

Returns

the ThunarVfsMonitorHandle for the new watch.


thunar_vfs_monitor_remove ()

void
thunar_vfs_monitor_remove (ThunarVfsMonitor *monitor,
                           ThunarVfsMonitorHandle *handle);

Removes handle from monitor .

Parameters

monitor

a ThunarVfsMonitor.

 

handle

a valid ThunarVfsMonitorHandle for monitor .

 

thunar_vfs_monitor_feed ()

void
thunar_vfs_monitor_feed (ThunarVfsMonitor *monitor,
                         ThunarVfsMonitorEvent event,
                         ThunarVfsPath *path);

Explicitly injects the given event into monitor s event processing logic.

Parameters

monitor

a ThunarVfsMonitor.

 

event

the ThunarVfsMonitorEvent that should be emulated.

 

path

the ThunarVfsPath on which event took place.

 

thunar_vfs_monitor_wait ()

void
thunar_vfs_monitor_wait (ThunarVfsMonitor *monitor);

Suspends the execution of the current thread until the monitor has processed all currently pending events. The calling thread must own a reference on the monitor !

This method should never be called from the main thread or you'll lock up your application!!

Parameters

monitor

a ThunarVfsMonitor.

 

Types and Values

ThunarVfsMonitor

typedef struct _ThunarVfsMonitor ThunarVfsMonitor;

The ThunarVfsMonitor contains private data only, and should be accessed using the functions below.


enum ThunarVfsMonitorEvent

Describes an event that occurred on a ThunarVfsMonitorHandle.

Members

THUNAR_VFS_MONITOR_EVENT_CHANGED

a file or directory was changed.

 

THUNAR_VFS_MONITOR_EVENT_CREATED

a file or directory was created.

 

THUNAR_VFS_MONITOR_EVENT_DELETED

a file or directory was deleted.

 

ThunarVfsMonitorHandle

typedef struct _ThunarVfsMonitorHandle ThunarVfsMonitorHandle;

A handle on a file system entity, which is currently watched by a ThunarVfsMonitor.