use Curses::UI;
my $cui = new Curses::UI;
my $win = $cui->add('window_id', 'Window');
# The hard way.
# -------------
my $dialog = $win->add(
'mydialog', 'Dialog::Filebrowser'
);
$dialog->focus;
my $file = $dialog->get();
$win->delete('mydialog');
# The easy way (see Curses::UI documentation).
# --------------------------------------------
$file = $cui->filebrowser();
$file = $cui->loadfilebrowser();
$file = $cui->savefilebrowser();
DESCRIPTION
Curses::UI::Dialog::Filebrowser is a filebrowser dialog.
This type of dialog can be used to select a file, anywhere
on the filesystem.
See exampes/demo-Curses::UI::Dialog::Filebrowser in the
distribution for a short demo.
OPTIONS
* -title < TEXT >
Set the title of the dialog window to TEXT.
* -path < PATH >
Set the path to start with to PATH. If this path
does not exist, the filebrowser will start in the
rootdirectory.
* -file < FILE >
Set the filename to start with to FILE.
* -editfilename < BOOLEAN >
If BOOLEAN has a true value, the user may edit
the filename. This is for example useful for a
filebrowser that is used to select a filename to
save to. By default this option is set to false.
* -show_hidden < BOOLEAN >
If BOOLEAN has a true value, hidden files (the filename
starts with a dot) will also be shown. By default this
option is set to false.
* -mask < ARRAYREF >
If -mask is defined, a filemask popupbox will be added
to the filebrowser dialog window. This popupbox will filter
the list of files that is displayed, using a regular expression
(case insensitive). The ARRAYREF contains a list of array
references. Each array reference has two elements: a regexp and
a description. Here's an example -mask:
Normally the first mask in the list of masks will be made
active upon creation of the filebrowser. If you want
another mask to be active, use the -mask_selected
option. Set this value to the index of the mask you want
to be active. For example: if you would want the ``howto''
mask in the above example to be active, you would use
the value 2 for -mask_selected.
METHODS
* new ( OPTIONS )
* layout ( )
* draw ( BOOLEAN )
* focus ( )
These are standard methods. See Curses::UI::Container
for an explanation of these.
* get ( )
This method will return the complete path to the file that was
selected using the filebrowser. If no file was selected, this
method will return an undefined value.
SPECIAL BINDINGS
* escape
This will invoke the cancel button, so the filebrowser widget
returns without selecting any file.
* ~
If the directory- or filelistbox of the dialog window has the
focus and the tilde (~) button is pressed, the filebrowser
will chdir to the homedirectory of the current user.
This package is free software and is provided ``as is'' without express
or implied warranty. It may be used, redistributed and/or modified
under the same terms as perl itself.