Plugin API
English
English
  • Getting Started
    • Introduction
    • Your First Plugin
    • File Structure Overview
    • Plugin Types
      • Window
      • Background Service
      • Format Extension
      • Inspector
    • Debug Plugin
  • Distribution
    • Prepare Plugin
    • Package Plugin
    • Publish Plugin
    • Update Plugin
    • Developer Policies
    • Plugin Icon Template
  • Developer Guide
    • manifest.json Configuration
    • Retrieve Data
    • Modify Data
    • Access Local Files
    • Issue Network Requests
    • Using Node.js Native API
    • Using Third-Party Modules
    • Multilingual (i18n)
    • Frameless Window
  • API Reference
    • event
    • item
    • folder
    • tag
    • tagGroup
    • library
    • window
    • app
    • os
    • screen
    • notification
    • contextMenu
    • dialog
    • clipboard
    • drag
    • shell
    • log
  • Extra Moudle
    • FFmpeg
Powered by GitBook
On this page
  • showOpenDialog(options)
  • showSaveDialog(options)
  • showMessageBox(options)
  • showErrorBox(title, content)
  1. API Reference

dialog

System dialog functionality, including opening, saving files, prompts, alerts, etc.

PreviouscontextMenuNextclipboard

Last updated 2 years ago

Below is an example of a dialog box for selecting multiple files:

let result = await eagle.dialog.showOpenDialog({ 
    properties: ['openFile', 'multiSelections'] 
});

Methods

showOpenDialog(options)

Displays the open file dialog.

  • options Object

    • title string (optional) - The title of the dialog window

    • defaultPath string (optional) - The default display path of the dialog

    • buttonLabel string (optional) - Custom label for the "Confirm" button; if empty, the default label is used.

    • filters [] (optional)

      • name string

      • extensions string[]

    • properties string[] (optional) - Contains dialog-related attributes. The following attribute values are supported:

      • openFile - Allows selecting files

      • openDirectory - Allows selecting folders

      • multiSelections- Allows multiple selections.

      • showHiddenFiles- Displays hidden files in the dialog.

      • createDirectory macOS - Allows you to create a new directory through the dialog.

      • promptToCreate Windows- If the entered file path does not exist in the dialog, prompt to create it. This does not actually create a file on the path but allows returning some non-existent addresses for the application to create.

    • message string (optional) macOS - The message displayed above the input box.

  • Returns Promise<result: Object>

    • resultObject

      • canceled boolean - Whether the dialog was canceled

      • filePaths string[] - Array of chosen file paths by the user. If the dialog is canceled, this will be an empty array.

{
  filters: [
    { name: 'Images', extensions: ['jpg', 'png', 'gif'] },
    { name: 'Movies', extensions: ['mkv', 'avi', 'mp4'] },
    { name: 'Custom File Type', extensions: ['as'] },
    { name: 'All Files', extensions: ['*'] }
  ]
}
let result = await eagle.dialog.showOpenDialog({
    properties: ['openFile', 'openDirectory']
});

showSaveDialog(options)

Displays the save file dialog.

  • options Object

    • title string (optional) - The title of the dialog window

    • defaultPath string (optional) - The default display path of the dialog

    • buttonLabel string (optional) - Custom label for the "Confirm" button; if empty, the default label is used.

      • name string

      • extensions string[]

    • properties string[] (optional) - Contains dialog-related attributes. The following attribute values are supported:

      • openDirectory - Allows selecting folders

      • showHiddenFiles- Displays hidden files in the dialog.

      • createDirectory macOS - Allows you to create a new directory through the dialog.

  • Returns Promise<result: Object>

    • resultObject

      • canceled boolean - Whether the dialog was canceled

      • filePath string - If the dialog is canceled, this value will be undefined.

{
  filters: [
    { name: 'Images', extensions: ['jpg', 'png', 'gif'] },
    { name: 'Movies', extensions: ['mkv', 'avi', 'mp4'] },
    { name: 'Custom File Type', extensions: ['as'] },
    { name: 'All Files', extensions: ['*'] }
  ]
}
let result = await eagle.dialog.showSaveDialog({
    properties: ['openDirectory']
});

showMessageBox(options)

Display a message dialog.

  • options Object

    • message string - The main content of the dialog

    • title string (optional) - Dialog title

    • detail string (optional) - Additional information

    • buttons strings[] (optional) - Array of button texts

    • type string (optional) - Can be none, info, error, question, or warning

  • Returns Promise<result: Object>

    • result Object

      • response Integer - The index of the clicked button

let result = await eagle.dialog.showMessageBox({
    title: "Messagebox title",
    message: "Message from the Plugin process",
    detail: "Ultra message here",
    buttons: ["OK", "Cancel"],
    type: "info"
});

console.log(result);		// {response: 0}

showErrorBox(title, content)

Display an error message dialog.

  • title string - The title displayed in the error box

  • content string - The text content displayed in the error box

  • Returns Promise<void>

await eagle.dialog.showErrorBox("Error box title", "Error message from the Plugin process");

Note: This feature is similar to Electron API's feature.

filters [] (optional)

Note: This function is similar to the Electron API's function.

This function is similar to the Electron API's function.

Note: This function is similar to the Electron API's function.

FileFilter
dialog.showOpenDialog
FileFilter
dialog.showSaveDialog
dialog.showSaveDialog
dialog.showSaveDialog