open_file
Description:
Asks the user to open one or more files.
The format for the filters
argument is `a(sa(us))`. Each item in the array specifies a single filter to offer to the user. The
first string is a user-visible name for the filter. The `a(us)` specifies a list of filter strings, which can be either a glob pattern (
indicated by 0) or a mimetype (indicated by 1).
Example: `[('Images', [(0, '*.ico'), (1, 'image/png')]), ('Text', [(0, '*.txt')])]`
The format for the choices
argument is `a(ssa(ss)s)`. For each element, the first string is an ID that will be returned with the
response, te second string is a user-visible label. The `a(ss)` is the list of choices, each being a is an ID and a user-visible label. The
final string is the initial selection, or `""`, to let the portal decide which choice will be initially selected. None of the strings, except
for the initial selection, should be empty.
As a special case, passing an empty array for the list of choices indicates a boolean choice that is typically displayed as a check button, using `"true"` and `"false"` as the choices.
Example: `[('encoding', 'Encoding', [('utf8', 'Unicode (UTF-8)'), ('latin15', 'Western')], 'latin15'), ('reencode', 'Reencode', [], 'false')]`
When the request is done, callback
will be called. You can then call [method@Portal.open_file_finish] to get the results.
Parameters:
this |
a [class@Portal] |
parent |
parent window information |
title |
title for the file chooser dialog |
filters |
a [struct@GLib.Variant] describing file filters |
current_filter |
a [struct@GLib.Variant] describing the current file filter |
choices |
a [struct@GLib.Variant] describing extra widgets |
flags |
options for this call |
cancellable |
optional [class@Gio.Cancellable] |
callback |
a callback to call when the request is done |
data |
data to pass to |