55 lines
1.9 KiB
Text
55 lines
1.9 KiB
Text
CLASS:: Dialog
|
|
summary:: Shows various system dialogs
|
|
categories:: GUI>Accessories
|
|
|
|
DESCRIPTION::
|
|
This class allows to show various system dialogs. link::#*openPanel:: will show a dialog for selecting a file to open, and link::#*savePanel:: will show a dialog for selecting or creating a file to save to.
|
|
|
|
|
|
CLASSMETHODS::
|
|
PRIVATE:: key
|
|
|
|
METHOD:: openPanel
|
|
Shows a dialog for selection of an existing file (or multiple files) to open. It does not do anything with the file, instead it just passes the chosen filenames to the given result handler.
|
|
|
|
ARGUMENT:: okFunc
|
|
An object to be evaluated when OK is pressed. As argument, either a single filename is passed as a String, or an Array of Strings for multiple selected items is passed, depending on the strong::multipleSelection:: argument. The paths will always be absolute paths.
|
|
ARGUMENT:: cancelFunc
|
|
An object to be evaluated when Cancel is pressed.
|
|
ARGUMENT:: multipleSelection
|
|
A Boolean indicating whether multiple files can be selected.
|
|
DISCUSSION::
|
|
Example:
|
|
code::
|
|
(
|
|
Dialog.openPanel({ arg path;
|
|
path.postln;
|
|
},{
|
|
"cancelled".postln;
|
|
});
|
|
)
|
|
::
|
|
|
|
METHOD:: savePanel
|
|
Shows a dialog for selecting or creating a file to save to. It does not do anything with the selected file, and does not create any file; instead it just passes the chosen filename to the given result handler.
|
|
|
|
ARGUMENT:: okFunc
|
|
An object to be evaluated when OK is pressed. The chosen filename (as an absolute path) is passed as a String as argument. If the file already exists, the user will be asked to confirm.
|
|
ARGUMENT:: cancelFunc
|
|
An object to be evaluated when Cancel is pressed.
|
|
DISCUSSION::
|
|
Example:
|
|
code::
|
|
(
|
|
Dialog.savePanel({ arg path;
|
|
path.postln;
|
|
},{
|
|
"cancelled".postln;
|
|
});
|
|
)
|
|
::
|
|
|
|
METHOD:: getPaths
|
|
note::Deprecated. Use link::#*openPanel:: instead. ::
|
|
|
|
Implements the same functionality as *openPanel, only the last argument is named differently and defaults to true.
|