mirror of
https://github.com/wailsapp/wails.git
synced 2025-05-04 11:31:10 +08:00

* New translations minecraftupdater.mdx (Korean) [ci skip] * New translations links.mdx (Korean) [ci skip] * New translations templates.mdx (Korean) [ci skip] * New translations _category_.json (Korean) [ci skip] * New translations developing-new-features.mdx (Korean) [ci skip] * New translations documenting.mdx (Korean) [ci skip] * New translations troubleshooting.mdx (Korean) [ci skip] * New translations windows-installer.mdx (Korean) [ci skip] * New translations faq.mdx (Korean) [ci skip] * New translations 2021-11-08-v2-beta2-release-notes.mdx (Korean) [ci skip] * New translations 2022-02-22-v2-beta3-release-notes.mdx (Korean) [ci skip] * New translations authors.yml (Korean) [ci skip] * New translations credits.mdx (Korean) [ci skip] * New translations markdown-page.md (Korean) [ci skip] * New translations stats.mdx (Korean) [ci skip] * New translations faq.mdx (Japanese) [ci skip] * New translations faq.mdx (Russian) [ci skip] * New translations introduction.mdx (Korean) [ci skip] * New translations faq.mdx (Chinese Simplified) [ci skip] * New translations options.json (Korean) [ci skip] * New translations current.json (Korean) [ci skip] * New translations version-v2.0.0-beta.38.json (Korean) [ci skip] * New translations version-v2.0.0-beta.39.json (Korean) [ci skip] * New translations footer.json (Korean) [ci skip] * New translations navbar.json (Korean) [ci skip] * New translations 2021-09-27-v2-beta1-release-notes.mdx (Korean) [ci skip] * New translations howdoesitwork.mdx (Korean) [ci skip] * New translations windows.mdx (Korean) [ci skip] * New translations log.mdx (Korean) [ci skip] * New translations _category_.json (Korean) [ci skip] * New translations linux.mdx (Korean) [ci skip] * New translations _category_.json (Korean) [ci skip] * New translations browser.mdx (Korean) [ci skip] * New translations dialog.mdx (Korean) [ci skip] * New translations events.mdx (Korean) [ci skip] * New translations intro.mdx (Korean) [ci skip] * New translations menu.mdx (Korean) [ci skip] * New translations _category_.json (Korean) [ci skip] * New translations window.mdx (Korean) [ci skip] * New translations cli.mdx (Korean) [ci skip] * New translations _category_.json (Korean) [ci skip] * New translations menus.mdx (Korean) [ci skip] * New translations options.mdx (Korean) [ci skip] * New translations project-config.mdx (Korean) [ci skip] * New translations _category_.json (Korean) [ci skip] * New translations helloworld.mdx (Korean) [ci skip] * New translations code.json (Korean) [ci skip] * New translations developing-new-features.mdx (Chinese Simplified) [ci skip] * New translations firstproject.mdx (Japanese) [ci skip] * New translations firstproject.mdx (Russian) [ci skip] * New translations firstproject.mdx (Chinese Simplified) [ci skip] * New translations installation.mdx (Japanese) [ci skip] * New translations installation.mdx (Russian) [ci skip] * New translations installation.mdx (Chinese Simplified) [ci skip] * New translations dynamic-assets.mdx (Japanese) [ci skip] * New translations dynamic-assets.mdx (Russian) [ci skip] * New translations dynamic-assets.mdx (Chinese Simplified) [ci skip] * New translations frameless.mdx (Japanese) [ci skip] * New translations frameless.mdx (Russian) [ci skip] * New translations frameless.mdx (Chinese Simplified) [ci skip] * New translations documenting.mdx (Japanese) [ci skip] * New translations documenting.mdx (Russian) [ci skip] * New translations frontend.mdx (Japanese) [ci skip] * New translations frontend.mdx (Russian) [ci skip] * New translations windows.mdx (Chinese Simplified) [ci skip] * New translations troubleshooting.mdx (Japanese) [ci skip] * New translations troubleshooting.mdx (Russian) [ci skip] * New translations troubleshooting.mdx (Chinese Simplified) [ci skip] * New translations windows-installer.mdx (Japanese) [ci skip] * New translations windows-installer.mdx (Russian) [ci skip] * New translations windows-installer.mdx (Chinese Simplified) [ci skip] * New translations dialog.mdx (Japanese) [ci skip] * New translations dialog.mdx (Russian) [ci skip] * New translations signing.mdx (Chinese Simplified) [ci skip] * New translations migrating.mdx (Russian) [ci skip] * New translations ides.mdx (Japanese) [ci skip] * New translations ides.mdx (Russian) [ci skip] * New translations ides.mdx (Chinese Simplified) [ci skip] * New translations migrating.mdx (Japanese) [ci skip] * New translations migrating.mdx (Chinese Simplified) [ci skip] * New translations signing.mdx (Russian) [ci skip] * New translations mouse-buttons.mdx (Japanese) [ci skip] * New translations mouse-buttons.mdx (Russian) [ci skip] * New translations mouse-buttons.mdx (Chinese Simplified) [ci skip] * New translations overscroll.mdx (Japanese) [ci skip] * New translations overscroll.mdx (Russian) [ci skip] * New translations routing.mdx (Japanese) [ci skip] * New translations routing.mdx (Russian) [ci skip] * New translations routing.mdx (Chinese Simplified) [ci skip] * New translations signing.mdx (Japanese) [ci skip] * New translations dialog.mdx (Chinese Simplified) [ci skip] * New translations project-config.mdx (Chinese Simplified) [ci skip] * New translations options.mdx (Chinese Simplified) [ci skip] * New translations howdoesitwork.mdx (Japanese) [ci skip] * New translations howdoesitwork.mdx (Russian) [ci skip] * New translations howdoesitwork.mdx (Chinese Simplified) [ci skip] * New translations 2021-09-27-v2-beta1-release-notes.mdx (Japanese) [ci skip] * New translations 2021-09-27-v2-beta1-release-notes.mdx (Russian) [ci skip] * New translations 2021-09-27-v2-beta1-release-notes.mdx (Chinese Simplified) [ci skip] * New translations 2021-11-08-v2-beta2-release-notes.mdx (Japanese) [ci skip] * New translations options.mdx (Russian) [ci skip] * New translations window.mdx (Japanese) [ci skip] * New translations menu.mdx (Japanese) [ci skip] * New translations menu.mdx (Russian) [ci skip] * New translations menu.mdx (Chinese Simplified) [ci skip] * New translations window.mdx (Russian) [ci skip] * New translations options.mdx (Japanese) [ci skip] * New translations cli.mdx (Chinese Simplified) [ci skip] * New translations menus.mdx (Japanese) [ci skip] * New translations menus.mdx (Russian) [ci skip] * New translations menus.mdx (Chinese Simplified) [ci skip] * New translations 2021-11-08-v2-beta2-release-notes.mdx (Russian) [ci skip] * New translations 2021-11-08-v2-beta2-release-notes.mdx (Chinese Simplified) [ci skip] * New translations emailit.mdx (Chinese Simplified) [ci skip] * New translations modalfilemanager.mdx (Chinese Simplified) [ci skip] * New translations 2022-02-22-v2-beta3-release-notes.mdx (Japanese) [ci skip] * New translations 2022-02-22-v2-beta3-release-notes.mdx (Russian) [ci skip] * New translations 2022-02-22-v2-beta3-release-notes.mdx (Chinese Simplified) [ci skip] * New translations credits.mdx (Japanese) [ci skip] * New translations credits.mdx (Russian) [ci skip] * New translations credits.mdx (Chinese Simplified) [ci skip] * New translations code.json (Korean) [ci skip] * New translations developing-new-features.mdx (Japanese) [ci skip] * New translations developing-new-features.mdx (Russian) [ci skip] * New translations ways-of-contributing.mdx (Japanese) [ci skip] * New translations documenting.mdx (Japanese) [ci skip] * New translations testing.mdx (Japanese) [ci skip] * New translations setting-up-a-dev-environment.mdx (Japanese) [ci skip] * New translations fixing-bugs.mdx (Japanese) [ci skip] * New translations helping-others.mdx (Japanese) [ci skip] * New translations ways-of-contributing.mdx (Russian) [ci skip] * New translations fixing-bugs.mdx (Chinese Simplified) [ci skip] * New translations documenting.mdx (Russian) [ci skip] * New translations documenting.mdx (Chinese Simplified) [ci skip] * New translations testing.mdx (Chinese Simplified) [ci skip] * New translations fixing-bugs.mdx (Russian) [ci skip] * New translations ways-of-contributing.mdx (Chinese Simplified) [ci skip] * New translations testing.mdx (Russian) [ci skip] * New translations helping-others.mdx (Russian) [ci skip] * New translations helping-others.mdx (Chinese Simplified) [ci skip] * New translations setting-up-a-dev-environment.mdx (Chinese Simplified) [ci skip] * New translations setting-up-a-dev-environment.mdx (Russian) [ci skip] * New translations developing-new-features.mdx (Chinese Simplified) [ci skip] * New translations current.json (Japanese) [ci skip] * New translations current.json (Russian) [ci skip] * New translations current.json (Chinese Simplified) [ci skip] * New translations version-v2.0.0-beta.44.json (Japanese) [ci skip] * New translations version-v2.0.0-beta.44.json (Russian) [ci skip] * New translations version-v2.0.0-beta.44.json (Chinese Simplified) [ci skip] * New translations version-v2.0.0-beta.43.json (Japanese) [ci skip] * New translations version-v2.0.0-beta.43.json (Russian) [ci skip] * New translations version-v2.0.0-beta.43.json (Chinese Simplified) [ci skip] * New translations installation.mdx (Korean) [ci skip] * New translations ways-of-contributing.mdx (Korean) [ci skip] * New translations testing.mdx (Korean) [ci skip] * New translations developing-new-features.mdx (Korean) [ci skip] * New translations documenting.mdx (Korean) [ci skip] * New translations fixing-bugs.mdx (Korean) [ci skip] * New translations helping-others.mdx (Korean) [ci skip] * New translations setting-up-a-dev-environment.mdx (Korean) [ci skip] * New translations current.json (Korean) [ci skip] * New translations options.json (Korean) [ci skip] * New translations version-v2.0.0-beta.44.json (Korean) [ci skip] * New translations version-v2.0.0-beta.43.json (Korean) [ci skip] * New translations footer.json (Korean) [ci skip] * New translations navbar.json (Korean) [ci skip] * New translations code.json (Korean) [ci skip] * New translations community-guide.mdx (Japanese) [ci skip] * New translations community-guide.mdx (Korean) [ci skip] * New translations community-guide.mdx (Russian) [ci skip] * New translations community-guide.mdx (Chinese Simplified) [ci skip] * New translations current.json (Japanese) [ci skip] * New translations current.json (Russian) [ci skip] * New translations current.json (Chinese Simplified) [ci skip] * New translations code.json (Japanese) [ci skip] * New translations code.json (Russian) [ci skip] * New translations code.json (Chinese Simplified) [ci skip] * New translations introduction.mdx (Korean) [ci skip] * New translations current.json (Korean) [ci skip] * New translations code.json (Korean) [ci skip] * New translations community-guide.mdx (Japanese) [ci skip] * New translations community-guide.mdx (Korean) [ci skip] * New translations community-guide.mdx (Russian) [ci skip] * New translations community-guide.mdx (Chinese Simplified) [ci skip] * New translations community-guide.mdx (Chinese Simplified) [ci skip] * New translations vscode.mdx (Japanese) [ci skip] * New translations vscode.mdx (Korean) [ci skip] * New translations vscode.mdx (Russian) [ci skip] * New translations vscode.mdx (Chinese Simplified) [ci skip] * New translations current.json (Chinese Simplified) [ci skip] * New translations riftshare.mdx (Chinese Simplified) [ci skip] * New translations surge.mdx (Chinese Simplified) [ci skip] * New translations wally.mdx (Chinese Simplified) [ci skip] * New translations encrypteasy.mdx (Chinese Simplified) [ci skip] * New translations filehound.mdx (Chinese Simplified) [ci skip] * New translations mollywallet.mdx (Chinese Simplified) [ci skip] * New translations optimus.mdx (Chinese Simplified) [ci skip] * New translations _category_.json (Chinese Simplified) [ci skip] * New translations emailit.mdx (Chinese Simplified) [ci skip] * New translations modalfilemanager.mdx (Chinese Simplified) [ci skip] * New translations browser.mdx (Chinese Simplified) [ci skip] * New translations vscode.mdx (Russian) [ci skip] * New translations vscode.mdx (Chinese Simplified) [ci skip] * New translations browser.mdx (Japanese) [ci skip] * New translations browser.mdx (Korean) [ci skip] * New translations browser.mdx (Russian) [ci skip] * New translations dialog.mdx (Japanese) [ci skip] * New translations vscode.mdx (Japanese) [ci skip] * New translations dialog.mdx (Korean) [ci skip] * New translations dialog.mdx (Russian) [ci skip] * New translations dialog.mdx (Chinese Simplified) [ci skip] * New translations events.mdx (Japanese) [ci skip] * New translations events.mdx (Korean) [ci skip] * New translations events.mdx (Russian) [ci skip] * New translations events.mdx (Chinese Simplified) [ci skip] * New translations intro.mdx (Japanese) [ci skip] * New translations intro.mdx (Korean) [ci skip] * New translations intro.mdx (Russian) [ci skip] * New translations vscode.mdx (Korean) [ci skip] * New translations intro.mdx (Chinese Simplified) [ci skip] * New translations log.mdx (Japanese) [ci skip] * New translations options.mdx (Russian) [ci skip] * New translations introduction.mdx (Japanese) [ci skip] * New translations options.mdx (Chinese Simplified) [ci skip] * New translations options.mdx (Korean) [ci skip] * New translations log.mdx (Korean) [ci skip] * New translations log.mdx (Russian) [ci skip] * New translations log.mdx (Chinese Simplified) [ci skip] * New translations menu.mdx (Japanese) [ci skip] * New translations menu.mdx (Korean) [ci skip] * New translations menu.mdx (Russian) [ci skip] * New translations menu.mdx (Chinese Simplified) [ci skip] * New translations window.mdx (Japanese) [ci skip] * New translations window.mdx (Korean) [ci skip] * New translations window.mdx (Russian) [ci skip] * New translations window.mdx (Chinese Simplified) [ci skip] * New translations options.mdx (Japanese) [ci skip] * New translations introduction.mdx (Korean) [ci skip] * New translations introduction.mdx (Russian) [ci skip] * New translations community-guide.mdx (Chinese Simplified) [ci skip] * New translations stats.mdx (Chinese Simplified) [ci skip] * New translations faq.mdx (Chinese Simplified) [ci skip] * New translations markdown-page.md (Chinese Simplified) [ci skip] * New translations introduction.mdx (Chinese Simplified) [ci skip] * New translations 2021-09-27-v2-beta1-release-notes.mdx (Chinese Simplified) [ci skip] * New translations version-v2.0.0-beta.44.json (Chinese Simplified) [ci skip] * Empty-Commit * Fix crowdin screwups again
284 lines
9.2 KiB
Plaintext
284 lines
9.2 KiB
Plaintext
---
|
|
sidebar_position: 5
|
|
---
|
|
|
|
# Dialog
|
|
|
|
This part of the runtime provides access to native dialogs, such as File Selectors and Message boxes.
|
|
|
|
:::info Javascript
|
|
Dialog is currently unsupported in the JS runtime.
|
|
:::
|
|
|
|
### OpenDirectoryDialog
|
|
|
|
Opens a dialog that prompts the user to select a directory. Can be customised using [OpenDialogOptions](#opendialogoptions).
|
|
|
|
Go: `OpenDirectoryDialog(ctx context.Context, dialogOptions OpenDialogOptions) (string, error)`
|
|
|
|
Returns: Selected directory (blank if the user cancelled) or an error
|
|
|
|
### OpenFileDialog
|
|
|
|
Opens a dialog that prompts the user to select a file. Can be customised using [OpenDialogOptions](#opendialogoptions).
|
|
|
|
Go: `OpenFileDialog(ctx context.Context, dialogOptions OpenDialogOptions) (string, error)`
|
|
|
|
Returns: Selected file (blank if the user cancelled) or an error
|
|
|
|
### OpenMultipleFilesDialog
|
|
|
|
Opens a dialog that prompts the user to select multiple files. Can be customised using [OpenDialogOptions](#opendialogoptions).
|
|
|
|
Go: `OpenMultipleFilesDialog(ctx context.Context, dialogOptions OpenDialogOptions) ([]string, error)`
|
|
|
|
Returns: Selected files (nil if the user cancelled) or an error
|
|
|
|
### SaveFileDialog
|
|
|
|
Opens a dialog that prompts the user to select a filename for the purposes of saving. Can be customised using [SaveDialogOptions](#savedialogoptions).
|
|
|
|
Go: `SaveFileDialog(ctx context.Context, dialogOptions SaveDialogOptions) (string, error)`
|
|
|
|
Returns: The selected file (blank if the user cancelled) or an error
|
|
|
|
### MessageDialog
|
|
|
|
Displays a message using a message dialog. Can be customised using [MessageDialogOptions](#messagedialogoptions).
|
|
|
|
Go: `MessageDialog(ctx context.Context, dialogOptions MessageDialogOptions) (string, error)`
|
|
|
|
Returns: The text of the selected button or an error
|
|
|
|
## Options
|
|
|
|
### OpenDialogOptions
|
|
|
|
```go
|
|
type OpenDialogOptions struct {
|
|
DefaultDirectory string
|
|
DefaultFilename string
|
|
Title string
|
|
Filters []FileFilter
|
|
ShowHiddenFiles bool
|
|
CanCreateDirectories bool
|
|
ResolvesAliases bool
|
|
TreatPackagesAsDirectories bool
|
|
}
|
|
```
|
|
|
|
| Field | Description | Win | Mac | Lin |
|
|
| -------------------------- | ---------------------------------------------- | --- | --- | --- |
|
|
| DefaultDirectory | The directory the dialog will show when opened | ✅ | ✅ | ✅ |
|
|
| DefaultFilename | The default filename | ✅ | ✅ | ✅ |
|
|
| Title | Title for the dialog | ✅ | ✅ | ✅ |
|
|
| [Filters](#filefilter) | A list of file filters | ✅ | ✅ | ✅ |
|
|
| ShowHiddenFiles | Show files hidden by the system | | ✅ | ✅ |
|
|
| CanCreateDirectories | Allow user to create directories | | ✅ | |
|
|
| ResolvesAliases | If true, returns the file not the alias | | ✅ | |
|
|
| TreatPackagesAsDirectories | Allow navigating into packages | | ✅ | |
|
|
|
|
### SaveDialogOptions
|
|
|
|
```go
|
|
type SaveDialogOptions struct {
|
|
DefaultDirectory string
|
|
DefaultFilename string
|
|
Title string
|
|
Filters []FileFilter
|
|
ShowHiddenFiles bool
|
|
CanCreateDirectories bool
|
|
TreatPackagesAsDirectories bool
|
|
}
|
|
```
|
|
|
|
| Field | Description | Win | Mac | Lin |
|
|
| -------------------------- | ---------------------------------------------- | --- | --- | --- |
|
|
| DefaultDirectory | The directory the dialog will show when opened | ✅ | ✅ | ✅ |
|
|
| DefaultFilename | The default filename | ✅ | ✅ | ✅ |
|
|
| Title | Title for the dialog | ✅ | ✅ | ✅ |
|
|
| [Filters](#filefilter) | A list of file filters | ✅ | ✅ | ✅ |
|
|
| ShowHiddenFiles | Show files hidden by the system | | ✅ | ✅ |
|
|
| CanCreateDirectories | Allow user to create directories | | ✅ | |
|
|
| TreatPackagesAsDirectories | Allow navigating into packages | | ✅ | |
|
|
|
|
### MessageDialogOptions
|
|
|
|
```go
|
|
type MessageDialogOptions struct {
|
|
Type DialogType
|
|
Title string
|
|
Message string
|
|
Buttons []string
|
|
DefaultButton string
|
|
CancelButton string
|
|
}
|
|
```
|
|
|
|
| Field | Description | Win | Mac | Lin |
|
|
| ------------- | ------------------------------------------------------------------------- | --- | --- | --- |
|
|
| Type | The type of message dialog, eg question, info... | ✅ | ✅ | ✅ |
|
|
| Title | Title for the dialog | ✅ | ✅ | ✅ |
|
|
| Message | The message to show the user | ✅ | ✅ | ✅ |
|
|
| Buttons | A list of button titles | | ✅ | |
|
|
| DefaultButton | The button with this text should be treated as default. Bound to `return` | | ✅ | |
|
|
| CancelButton | The button with this text should be treated as cancel. Bound to `escape` | | ✅ | |
|
|
|
|
#### Windows
|
|
|
|
Windows has standard dialog types in which the buttons are not customisable. The value returned will be one of: "Ok", "Cancel", "Abort", "Retry", "Ignore", "Yes", "No", "Try Again" or "Continue"
|
|
|
|
#### Linux
|
|
|
|
Linux has standard dialog types in which the buttons are not customisable. The value returned will be one of: "Ok", "Cancel", "Yes", "No"
|
|
|
|
#### Mac
|
|
|
|
A message dialog on Mac may specify up to 4 buttons. If no `DefaultButton` or `CancelButton` is given, the first button is considered default and is bound to the `return` key.
|
|
|
|
For the following code:
|
|
|
|
```go
|
|
selection, err := runtime.MessageDialog(b.ctx, runtime.MessageDialogOptions{
|
|
Title: "It's your turn!",
|
|
Message: "Select a number",
|
|
Buttons: []string{"one", "two", "three", "four"},
|
|
})
|
|
```
|
|
|
|
the first button is shown as default:
|
|
|
|
<div class="text--center">
|
|
<img
|
|
src="/img/runtime/dialog_no_defaults.png"
|
|
width="30%"
|
|
class="screenshot"
|
|
/>
|
|
</div>
|
|
|
|
<br />
|
|
|
|
And if we specify `DefaultButton` to be "two":
|
|
|
|
```go
|
|
selection, err := runtime.MessageDialog(b.ctx, runtime.MessageDialogOptions{
|
|
Title: "It's your turn!",
|
|
Message: "Select a number",
|
|
Buttons: []string{"one", "two", "three", "four"},
|
|
DefaultButton: "two",
|
|
})
|
|
```
|
|
|
|
the second button is shown as default. When `return` is pressed, the value "two" is returned.
|
|
|
|
<div class="text--center">
|
|
<img
|
|
src="/img/runtime/dialog_default_button.png"
|
|
width="30%"
|
|
class="screenshot"
|
|
/>
|
|
</div>
|
|
|
|
<br />
|
|
|
|
If we now specify `CancelButton` to be "three":
|
|
|
|
```go
|
|
selection, err := runtime.MessageDialog(b.ctx, runtime.MessageDialogOptions{
|
|
Title: "It's your turn!",
|
|
Message: "Select a number",
|
|
Buttons: []string{"one", "two", "three", "four"},
|
|
DefaultButton: "two",
|
|
CancelButton: "three",
|
|
})
|
|
```
|
|
|
|
the button with "three" is shown at the bottom of the dialog. When `escape` is pressed, the value "three" is returned:
|
|
|
|
<div class="text--center">
|
|
<img
|
|
src="/img/runtime/dialog_default_cancel.png"
|
|
width="30%"
|
|
class="screenshot"
|
|
/>
|
|
</div>
|
|
|
|
<br />
|
|
<br />
|
|
<br />
|
|
|
|
#### DialogType
|
|
|
|
```go
|
|
const (
|
|
InfoDialog DialogType = "info"
|
|
WarningDialog DialogType = "warning"
|
|
ErrorDialog DialogType = "error"
|
|
QuestionDialog DialogType = "question"
|
|
)
|
|
```
|
|
|
|
### FileFilter
|
|
|
|
```go
|
|
type FileFilter struct {
|
|
DisplayName string // Filter information EG: "Image Files (*.jpg, *.png)"
|
|
Pattern string // semi-colon separated list of extensions, EG: "*.jpg;*.png"
|
|
}
|
|
```
|
|
|
|
#### Windows
|
|
|
|
Windows allows you to use multiple file filters in dialog boxes. Each FileFilter will show up as a separate entry in the dialog:
|
|
|
|
<div class="text--center">
|
|
<img
|
|
src="/img/runtime/dialog_win_filters.png"
|
|
width="50%"
|
|
class="screenshot"
|
|
/>
|
|
</div>
|
|
|
|
<br />
|
|
<br />
|
|
<br />
|
|
|
|
#### Linux
|
|
|
|
Linux allows you to use multiple file filters in dialog boxes. Each FileFilter will show up as a separate entry in the dialog:
|
|
|
|
<div class="text--center">
|
|
<img
|
|
src="/img/runtime/dialog_lin_filters.png"
|
|
width="50%"
|
|
class="screenshot"
|
|
/>
|
|
</div>
|
|
|
|
<br />
|
|
<br />
|
|
<br />
|
|
|
|
#### Mac
|
|
|
|
Mac dialogs only have the concept of a single set of patterns to filter files. If multiple FileFilters are provided, Wails will use all the Patterns defined.
|
|
|
|
Example:
|
|
|
|
```go
|
|
selection, err := runtime.OpenFileDialog(b.ctx, runtime.OpenDialogOptions{
|
|
Title: "Select File",
|
|
Filters: []runtime.FileFilter{
|
|
{
|
|
DisplayName: "Images (*.png;*.jpg)",
|
|
Pattern: "*.png;*.jpg",
|
|
}, {
|
|
DisplayName: "Videos (*.mov;*.mp4)",
|
|
Pattern: "*.mov;*.mp4",
|
|
},
|
|
},
|
|
})
|
|
```
|
|
|
|
This will result in the Open File dialog using `*.png,*.jpg,*.mov,*.mp4` as a filter.
|