{
  "name": "FileDialog",
  "component": "gui",
  "header": "nativeui/file_dialog.h",
  "type": "Class",
  "namespace": "nu",
  "description": "Base class for file dialogs.",
  "class_properties": [
    {
      "description": "Option that indicates the open dialog will open folders instead of files.\n",
      "id": "optionpickfolders",
      "type": {
        "name": "Integer"
      },
      "name": "optionPickFolders"
    },
    {
      "description": "Option that indicates the open dialog can select multiple items.\n",
      "id": "optionmultiselect",
      "type": {
        "name": "Integer"
      },
      "name": "optionMultiSelect"
    },
    {
      "description": "Option that indicates hidden files will always show in the dialog.\n",
      "id": "optionshowhidden",
      "type": {
        "name": "Integer"
      },
      "name": "optionShowHidden"
    }
  ],
  "methods": [
    {
      "signature": {
        "returnType": {
          "name": "String"
        },
        "name": "getResult",
        "parameters": [],
        "shortStr": "getResult()",
        "str": "getResult()"
      },
      "description": "Return the chosen item in dialog.",
      "id": "getresult"
    },
    {
      "signature": {
        "returnType": {
          "name": "Boolean"
        },
        "name": "run",
        "parameters": [],
        "shortStr": "run()",
        "str": "run()"
      },
      "description": "Show the dialog and wait for result, return `true` if user has chosen\nitem(s).\n",
      "id": "run"
    },
    {
      "signature": {
        "returnType": {
          "name": "Boolean"
        },
        "name": "runForWindow",
        "parameters": [
          {
            "type": {
              "name": "Window",
              "id": "window"
            },
            "name": "window"
          }
        ],
        "shortStr": "runForWindow(window)",
        "str": "runForWindow(window)"
      },
      "description": "Show the dialog as a modal child of parent `window` and wait for result,\nreturn `true` if user has chosen item(s).\n",
      "id": "runforwindow-window"
    },
    {
      "signature": {
        "name": "setTitle",
        "parameters": [
          {
            "type": {
              "name": "String"
            },
            "name": "title"
          }
        ],
        "shortStr": "setTitle(title)",
        "str": "setTitle(title)"
      },
      "description": "Set the title of the dialog.",
      "id": "settitle-title"
    },
    {
      "signature": {
        "name": "setButtonLabel",
        "parameters": [
          {
            "type": {
              "name": "String"
            },
            "name": "label"
          }
        ],
        "shortStr": "setButtonLabel(label)",
        "str": "setButtonLabel(label)"
      },
      "description": "Set the text of accept button.",
      "id": "setbuttonlabel-label"
    },
    {
      "signature": {
        "name": "setFilename",
        "parameters": [
          {
            "type": {
              "name": "String"
            },
            "name": "filename"
          }
        ],
        "shortStr": "setFilename(filename)",
        "str": "setFilename(filename)"
      },
      "description": "Set the filename to show in the dialog.",
      "id": "setfilename-filename"
    },
    {
      "signature": {
        "name": "setFolder",
        "parameters": [
          {
            "type": {
              "name": "String"
            },
            "name": "folder"
          }
        ],
        "shortStr": "setFolder(folder)",
        "str": "setFolder(folder)"
      },
      "description": "Set a `folder` that is always selected when the dialog is opened\n\nOn macOS file dialogs of sandboxed apps may silently ignore the folder\nselection, notwithstanding that the user may be able to subsequently\nnavigate to the folder and the app successfully access files within\nthe folder. The behavior depends on the app's entitlements and the\nparticular folder specified.\n",
      "id": "setfolder-folder"
    },
    {
      "signature": {
        "name": "setOptions",
        "parameters": [
          {
            "type": {
              "name": "Integer"
            },
            "name": "options"
          }
        ],
        "shortStr": "setOptions(options)",
        "str": "setOptions(options)"
      },
      "description": "A bit array of `options`.",
      "id": "setoptions-options"
    },
    {
      "signature": {
        "name": "setFilters",
        "parameters": [
          {
            "type": {
              "name": "Array",
              "elementType": {
                "name": "FileDialog::Filter",
                "id": "filedialog_filter"
              }
            },
            "name": "filters",
            "description": "An array of `<!type>FileDialog::Filter` objects.\n"
          }
        ],
        "shortStr": "setFilters(filters)",
        "str": "setFilters(filters)"
      },
      "description": "Set the file types that the dialog can open or save.",
      "id": "setfilters-filters"
    }
  ],
  "module": "gui",
  "id": "filedialog"
}