[Overview][Types][Classes][Procedures and functions][Index] | Reference for unit 'LazDialogs' (#lcl)

# TLazarusFileDialogForm

[Properties (by Name)] [Methods (by Name)] [Events (by Name)]

Implements the form displayed for TLazOpenDialog descendants.

## Declaration

Source position: lazdialogs.pas line 20

`type TLazarusFileDialogForm = class(TForm)`
`public`
`ButtonPanel: TButtonPanel;` |  | Button panel for the Lazarus dialog form.
`ShellTreeView: TShellTreeView;` |  | Shell tree view control for the Lazarus dialog form.
`ShellListView: TShellListView;` |  | Shell list view control for the Lazarus dialog form.
`SaveEdit: TEdit;` |  | Edit control used for a FileName on the dialog form.
`FilterComboBox: TFilterComboBox;` |  | Combo box control used for the file mask filter in the Lazarus dialog form.
`constructor CreateNew(); override;` |  | Alternate constructor for the class instance.
`procedure Initialize();` |  | Creates and positions child controls on the Lazarus dialog form.
`procedure HandleOkClick();` |  | Event handler signalled when the OK button is clicked.
`procedure HandleCancelClick();` |  | Event handler signalled when the Cancel button is clicked.
`procedure HandleCloseQuery();` |  | Event handler for an OnCloseQuery event notification.
`procedure HandleEditChange();` |  | Event handler for changes to the value in the SaveEdit control.
`procedure HandleSelectItem();` |  | Event handler for changes to the selected item in ShellListView.
`procedure HandleTreeViewSelectionChanged();` |  | Event handler signalled when the selected item in ShellTreeView is changed.
`end;`

## Inheritance

`TLazarusFileDialogForm` |  | Implements the form displayed for TLazOpenDialog descendants.
`TForm` |  | Implements a form used in an LCL application.
`TCustomForm` |  | The base type for TForm classes.
`TCustomDesignControl` |  | Provides a designer surface for scaling and layout of its child controls.
`TScrollingWinControl` |  | Implements a windowed control with scroll bars.
`TCustomControl` |  | The base class for windowed controls which paint themselves.
`TWinControl` |  | Implements a windowed control which can contain other child controls.
`TControl` |  | The base class for visible controls.
`TLCLComponent` |  | The base class for LCL components which have an associated widget.
`TComponent`
?
`TObject`

## Description

TLazarusFileDialogForm is a TForm descendant which implements the form displayed for dialogs which are not wrappers for native dialogs on a given platform. The form includes public members that are used to store input or output values for the dialog, like:

- FileName
- Filter
- InitialDir
- Title

It includes public user interface elements needed for the dialog form. The active UI elements are determined by the TLazFileDialogKind value passed as an argument when a dialog calls the Initialize method for the form. The UI elements include:

- ShellTreeView (TShellTreeView)
- ShellListView (TShellListView)
- SaveEdit (TEdit)
- FilterComboBox (TFilterComboBox)
- ButtonPanel (TButtonPanel)

TLazarusFileDialogForm includes methods that implement routines assigned to event handlers in the various UI elements. The routines perform actions like setting the ModalResult value when a button is clicked, updating FileName from selected nodes in the shell controls, and enabling / disabling controls as needed.

TLazarusFileDialogForm is used to implement the private form member in the TLazOpenDialog component.

## See also

TLazOpenDialog |  | Implements a Lazarus file open dialog.
TLazFileDialogKind |  | Enumerated type which represents the dialog kind in a Lazarus dialog form.
TForm |  | Implements a form used in an LCL application.