Top | ![]() |
![]() |
![]() |
![]() |
void | fm_folder_block_updates () |
FmFolder * | fm_folder_find_by_path () |
FmFolder * | fm_folder_from_gfile () |
FmFolder * | fm_folder_from_path () |
FmFolder * | fm_folder_from_path_name () |
FmFolder * | fm_folder_from_uri () |
FmFileInfo * | fm_folder_get_file_by_name () |
FmFileInfoList * | fm_folder_get_files () |
gboolean | fm_folder_get_filesystem_info () |
FmFileInfo * | fm_folder_get_info () |
FmPath * | fm_folder_get_path () |
gboolean | fm_folder_is_empty () |
gboolean | fm_folder_is_incremental () |
gboolean | fm_folder_is_loaded () |
gboolean | fm_folder_is_valid () |
gboolean | fm_folder_make_directory () |
void | fm_folder_query_filesystem_info () |
void | fm_folder_reload () |
void | fm_folder_unblock_updates () |
void | changed | Run First |
void | content-changed | Run First |
guint | error | Run Last |
void | files-added | Run First |
void | files-changed | Run First |
void | files-removed | Run First |
void | finish-loading | Run First |
void | fs-info | Run First |
void | removed | Run First |
void | start-loading | Run First |
void | unmount | Run First |
include
: libfm/fm.h
The FmFolder object allows to open and monitor items of some directory (either local or remote), i.e. files and directories, to have fast access to their info and to info of the directory itself as well.
void
fm_folder_block_updates (FmFolder *folder
);
Blocks emitting signals for changes in folder, i.e. if some file was
added, changed, or removed in folder after this API, no signal will be
sent until next call to fm_folder_unblock_updates()
.
Since: 1.2.0
FmFolder *
fm_folder_find_by_path (FmPath *path
);
Checks if folder by path
is already in use.
Since: 1.2.0
FmFolder *
fm_folder_from_gfile (GFile *gf
);
Retrieves a folder corresponding to gf
. Returned data may be freshly
created or already loaded. Caller should call g_object_unref()
on the
returned data after usage.
Before 1.0.0 this call had name fm_folder_get_for_gfile.
Since: 0.1.1
FmFolder *
fm_folder_from_path (FmPath *path
);
Retrieves a folder corresponding to path
. Returned data may be freshly
created or already loaded. Caller should call g_object_unref()
on the
returned data after usage.
Before 1.0.0 this call had name fm_folder_get.
Since: 0.1.1
FmFolder *
fm_folder_from_path_name (const char *path
);
Retrieves a folder corresponding to path
. Returned data may be freshly
created or already loaded. Caller should call g_object_unref()
on the
returned data after usage.
Before 1.0.0 this call had name fm_folder_get_for_path_name.
Since: 0.1.0
FmFolder *
fm_folder_from_uri (const char *uri
);
Retrieves a folder corresponding to uri
. Returned data may be freshly
created or already loaded. Caller should call g_object_unref()
on the
returned data after usage.
Before 1.0.0 this call had name fm_folder_get_for_uri.
Since: 0.1.0
FmFileInfo * fm_folder_get_file_by_name (FmFolder *folder
,const char *name
);
Tries to find a file with basename name
in the folder
. Returned data
is owned by FmFolder and should be not freed by caller.
Since: 0.1.16
FmFileInfoList *
fm_folder_get_files (FmFolder *folder
);
Retrieves list of currently known files and subdirectories in the
folder
. Returned list is owned by FmFolder and should be not modified
by caller. If caller wants to keep a reference to the returned list it
should do fm_file_info_list_ref() on the returned data.
Before 1.0.0 this call had name fm_folder_get.
Since: 0.1.1
gboolean fm_folder_get_filesystem_info (FmFolder *folder
,guint64 *total_size
,guint64 *free_size
);
Retrieves info about total and free space on the filesystem which
contains the folder
.
folder |
folder to retrieve info |
|
total_size |
pointer to counter of total size of the filesystem |
|
free_size |
pointer to counter of free space on the filesystem |
Since: 0.1.16
FmFileInfo *
fm_folder_get_info (FmFolder *folder
);
Retrieves FmFileInfo data about the folder itself. Returned data is owned by FmFolder and should be not modified or freed by caller.
Since: 1.0.0
FmPath *
fm_folder_get_path (FmFolder *folder
);
Retrieves path of the folder. Returned data is owned by FmFolder and should be not modified or freed by caller.
Since: 1.0.0
gboolean
fm_folder_is_empty (FmFolder *folder
);
Checks if folder has no files or subdirectories.
Since: 1.0.0
gboolean
fm_folder_is_incremental (FmFolder *folder
);
Checks if a folder is incrementally loaded.
After an FmFolder object is obtained from calling fm_folder_from_path()
,
if it's not yet loaded, it begins loading the content of the folder
and emits "start-loading" signal. Most of the time, the info of the
files in the folder becomes available only after the folder is fully
loaded. That means, after the "finish-loading" signal is emitted.
Before the loading is finished, fm_folder_get_files()
returns nothing.
You can tell if a folder is still being loaded with fm_folder_is_loaded()
.
However, for some special FmFolder types, such as the ones handling
search:// URIs, we want to access the file infos while the folder is
still being loaded (the search is still ongoing).
The content of the folder grows incrementally and fm_folder_get_files()
returns files currently being loaded even when the folder is not
fully loaded. This is what we called incremental.
fm_folder_is_incremental()
tells you if the FmFolder has this feature.
Since: 1.0.2
gboolean
fm_folder_is_loaded (FmFolder *folder
);
Checks if all data for folder
is completely loaded.
Before 1.0.0 this call had name fm_folder_get_is_loaded.
Since: 0.1.16
gboolean
fm_folder_is_valid (FmFolder *folder
);
Checks if directory described by folder
exists.
Since: 1.0.0
gboolean fm_folder_make_directory (FmFolder *folder
,const char *name
,GError **error
);
Creates new directory in given folder
.
folder |
folder to apply |
|
name |
display name for new directory |
|
error |
location to save error. |
[allow-none][out] |
Since: 1.2.0
void
fm_folder_query_filesystem_info (FmFolder *folder
);
Queries to retrieve info about filesystem which contains the folder
if
the filesystem supports such query.
Since: 0.1.16
void
fm_folder_reload (FmFolder *folder
);
Causes to retrieve all data for the folder
as if folder was freshly
opened.
Since: 0.1.1
void
fm_folder_unblock_updates (FmFolder *folder
);
Unblocks emitting signals for changes in folder. If some changes were
in folder after previous call to fm_folder_block_updates()
then these
changes will be sent after this call.
Since: 1.2.0
struct FmFolderClass { GObjectClass parent_class; void (*files_added)(FmFolder* dir, GSList* files); void (*files_removed)(FmFolder* dir, GSList* files); void (*files_changed)(FmFolder* dir, GSList* files); void (*start_loading)(FmFolder* dir); void (*finish_loading)(FmFolder* dir); void (*unmount)(FmFolder* dir); void (*changed)(FmFolder* dir); void (*removed)(FmFolder* dir); void (*content_changed)(FmFolder* dir); void (*fs_info)(FmFolder* dir); guint (*error)(FmFolder* dir, GError* err, guint severity); };
the class closure for “files-added” signal |
||
the class closure for “files-removed” signal |
||
the class closure for “files-changed” signal |
||
the class closure for “start-loading” signal |
||
the class closure for “finish-loading” signal |
||
the class closure for “unmount” signal |
||
the class closure for “changed” signal |
||
the class closure for “removed” signal |
||
the class closure for “content-changed” signal |
||
the class closure for “fs-info” signal |
||
the class closure for “error” signal |
“changed”
signalvoid user_function (FmFolder *folder, gpointer user_data)
The “changed” signal is emitted when the folder itself was changed.
folder |
the monitored directory |
|
user_data |
user data set when the signal handler was connected. |
Flags: Run First
Since: 0.1.16
“content-changed”
signalvoid user_function (FmFolder *folder, gpointer user_data)
The “content-changed” signal is emitted when content of the folder is changed (some files are added, removed, or changed).
folder |
the monitored directory |
|
user_data |
user data set when the signal handler was connected. |
Flags: Run First
Since: 0.1.16
“error”
signalguint user_function (FmFolder *folder, GError *error, guint severity, gpointer user_data)
The “error” signal is emitted when some error happens. A case if more than one handler is connected to this signal is ambiguous.
folder |
the monitored directory |
|
error |
error descriptor |
|
severity |
FmJobErrorSeverity of the error |
|
user_data |
user data set when the signal handler was connected. |
Flags: Run Last
Since: 0.1.1
“files-added”
signalvoid user_function (FmFolder *folder, gpointer list, gpointer user_data)
The “files-added” signal is emitted when there is some new file created in the directory.
folder |
the monitored directory |
|
list |
GList of newly added FmFileInfo |
|
user_data |
user data set when the signal handler was connected. |
Flags: Run First
Since: 0.1.0
“files-changed”
signalvoid user_function (FmFolder *folder, gpointer list, gpointer user_data)
The “files-changed” signal is emitted when some file in the directory was changed.
folder |
the monitored directory |
|
list |
GList of FmFileInfo that were changed |
|
user_data |
user data set when the signal handler was connected. |
Flags: Run First
Since: 0.1.0
“files-removed”
signalvoid user_function (FmFolder *folder, gpointer list, gpointer user_data)
The “files-removed” signal is emitted when some file was deleted from the directory.
folder |
the monitored directory |
|
list |
GList of FmFileInfo that were deleted |
|
user_data |
user data set when the signal handler was connected. |
Flags: Run First
Since: 0.1.0
“finish-loading”
signalvoid user_function (FmFolder *folder, gpointer user_data)
The “finish-loading” signal is emitted when the content
of the folder is loaded.
This signal may be emitted more than once and can be induced
by calling fm_folder_reload()
.
folder |
the monitored directory |
|
user_data |
user data set when the signal handler was connected. |
Flags: Run First
Since: 1.0.0
“fs-info”
signalvoid user_function (FmFolder *folder, gpointer user_data)
The “fs-info” signal is emitted when filesystem information is available.
folder |
the monitored directory |
|
user_data |
user data set when the signal handler was connected. |
Flags: Run First
Since: 0.1.16
“removed”
signalvoid user_function (FmFolder *folder, gpointer user_data)
The “removed” signal is emitted when the folder itself was deleted.
folder |
the monitored directory |
|
user_data |
user data set when the signal handler was connected. |
Flags: Run First
Since: 0.1.16
“start-loading”
signalvoid user_function (FmFolder *folder, gpointer user_data)
The “start-loading” signal is emitted when the folder is about to be reloaded.
folder |
the monitored directory |
|
user_data |
user data set when the signal handler was connected. |
Flags: Run First
Since: 1.0.0