FileLoader#
Superclasses: Object
Load a file into a GtkSourceBuffer.
A GtkSourceFileLoader object permits to load the contents of a File or a
InputStream into a Buffer.
A file loader should be used only for one load operation, including errors
handling. If an error occurs, you can reconfigure the loader and relaunch the
operation with load_async.
Running a GtkSourceFileLoader is an undoable action for the
Buffer.
After a file loading, the buffer is reset to the contents provided by the
File or InputStream, so the buffer is set as “unmodified”, that is,
set_modified is called with False. If the contents isn’t
saved somewhere (for example if you load from stdin), then you should
probably call set_modified with True after calling
load_finish.
Constructors#
- class FileLoader
- classmethod new(buffer: Buffer, file: File) FileLoader#
Creates a new
GtkSourceFileLoaderobject. The contents is read from theFile's location.If not already done, call
set_locationbefore calling this constructor. The previous location is anyway not needed, because as soon as the file loading begins, thebufferis emptied.
- classmethod new_from_stream(buffer: Buffer, file: File, stream: InputStream) FileLoader#
Creates a new
FileLoaderobject. The contents is read fromstream.- Parameters:
buffer – the
Bufferto load the contents into.file – the
File.stream – the
InputStreamto load, e.g. stdin.
Methods#
- class FileLoader
-
- get_compression_type() CompressionType#
- get_input_stream() InputStream | None#
- get_newline_type() NewlineType#
- async load_async(self, io_priority: int, cancellable: Cancellable | None = None, progress_callback: Callable[[int, int, Any], None] | None = None) bool#
This is the awaitable version of
load_async().- Parameters:
io_priority – the I/O priority of the request. E.g. %G_PRIORITY_LOW, %G_PRIORITY_DEFAULT or %G_PRIORITY_HIGH.
cancellable – optional
Cancellableobject,Noneto ignore.progress_callback – function to call back with progress information, or
Noneif progress information is not needed.
- load_async(io_priority: int, cancellable: Cancellable | None = None, progress_callback: Callable[[int, int, Any], None] | None = None, progress_callback_data: Any = None, callback: Callable[[Object | None, AsyncResult, Any], None] | None = None, user_data: Any = None) None#
Loads asynchronously the file or input stream contents into the
Buffer.See the
AsyncResultdocumentation to know how to use this function.- Parameters:
io_priority – the I/O priority of the request. E.g. %G_PRIORITY_LOW, %G_PRIORITY_DEFAULT or %G_PRIORITY_HIGH.
cancellable – optional
Cancellableobject,Noneto ignore.progress_callback – function to call back with progress information, or
Noneif progress information is not needed.progress_callback_data – user data to pass to
progress_callback.callback – a
AsyncReadyCallbackto call when the request is satisfied.user_data – user data to pass to
callback.
- load_finish(result: AsyncResult) bool#
Finishes a file loading started with
load_async.If the contents has been loaded, the following
Fileproperties will be updated: the location, the encoding, the newline type and the compression type.- Parameters:
result – a
AsyncResult.
- set_candidate_encodings(candidate_encodings: list[Encoding]) None#
Sets the candidate encodings for the file loading.
The encodings are tried in the same order as the list.
For convenience,
candidate_encodingscan contain duplicates. Only the first occurrence of a duplicated encoding is kept in the list.By default the candidate encodings are (in that order in the list):
If set, the
File's encoding as returned byget_encoding.The default candidates as returned by
get_default_candidates.
- Parameters:
candidate_encodings – a list of
Encoding<!– –>s.