![]() |
![]() |
![]() |
Libfm Reference Manual | ![]() |
---|---|---|---|---|
Top | Description | Object Hierarchy | Signals |
struct FmDirListJob; struct FmDirListJobClass; void fm_dir_list_job_add_found_file (FmDirListJob *job
,FmFileInfo *file
); FmFileInfoList * fm_dir_list_job_get_files (FmDirListJob *job
); FmDirListJob * fm_dir_list_job_new (FmPath *path
,gboolean dir_only
); FmDirListJob * fm_dir_list_job_new_for_gfile (GFile *gf
); void fm_dir_list_job_set_incremental (FmDirListJob *job
,gboolean set
);
include
: libfm/fm-dir-list-job.h
The FmDirListJob can be used to gather list of FmFileInfo that some directory contains.
struct FmDirListJob { FmJob parent; FmPath* dir_path; gboolean dir_only; FmFileInfo* dir_fi; FmFileInfoList* files; };
FmJob |
the parent object |
FmPath * |
directory to get listing |
TRUE if list only subdirectories |
|
FmFileInfo * |
file info of the directory |
FmFileInfoList * |
the listing of the directory |
void fm_dir_list_job_add_found_file (FmDirListJob *job
,FmFileInfo *file
);
This API may be called by the classes derived of FmDirListJob only. Application developers should not use this API. When a new file is found in the dir being listed, implementations of FmDirListJob should call this API with the info of the newly found file. The FmFileInfo will be added to the found file list.
If emission of the "files-found" signal is turned on by
fm_dir_list_job_set_incremental()
, the signal will be emitted
for the newly found files after several new files are added.
See the document for the signal for more detail.
|
the job that collected listing |
|
a FmFileInfo of the newly found file |
Since 1.0.2
FmFileInfoList * fm_dir_list_job_get_files (FmDirListJob *job
);
Retrieves gathered listing from the job
. This function may be called
only from "finished" signal handler. Returned data is owned by
the job
and should be not freed by caller.
Before 1.0.1 this call had name fm_dir_dist_job_get_files due to typo.
|
the job that collected listing |
Returns : |
list of gathered data. [transfer none] |
Since 0.1.0
FmDirListJob * fm_dir_list_job_new (FmPath *path
,gboolean dir_only
);
Creates a new FmDirListJob for directory listing. If dir_only
is
TRUE
then objects other than directories will be omitted from the
listing.
|
path to directory to get listing |
|
TRUE to include only directories in the list |
Returns : |
a new FmDirListJob object. [transfer full] |
Since 0.1.0
FmDirListJob * fm_dir_list_job_new_for_gfile (GFile *gf
);
Creates a new FmDirListJob for listing of directory gf
.
|
descriptor of directory to get listing |
Returns : |
a new FmDirListJob object. [transfer full] |
Since 0.1.0
void fm_dir_list_job_set_incremental (FmDirListJob *job
,gboolean set
);
Sets whether job
should send the "files-found" signal
on found files before the job
is finished or not.
This should only be called before the job
is launched.
|
the job descriptor |
|
TRUE if job should send the "files-found" signal |
Since 1.0.2
"files-found"
signalvoid user_function (FmDirListJob *job,
gpointer files,
gpointer user_data) : Run Last
The "files-found" signal is emitted for every file
found during directory listing. By default the signal is not
emitted for performance reason. This can be turned on by calling
fm_dir_list_job_set_incremental()
.
|
a job that emitted the signal |
|
GSList of found files. [element-type FmFileInfo] |
|
user data set when the signal handler was connected. |
Since 1.0.2