Sign in Join
FPDoc Onlineexperiment

TaskDlgEmulation unit

Implements an emulated task dialog for platforms where the Task Dialog API is not supported.

TaskDlgEmulation.pp contains types, routines, and variable used to implement a non-native, emulated Task Dialog. It is used in widgetset classes for platforms where the task dialog API is not available, or not supported for a specific version of an operating system. It emulates the functionality of TaskDialogIndirect available on Windows Vista and later versions. It adds capabilities that TaskDialogIndirect does not have, including:

  • Query via combo-box.
  • Query via single line edit, which supports masking the input for use with e.g. passwords.

It contains TLCLTaskDialog - a dynamically configured form displayed when a task dialog is executed using its configuration settings. The emulated dialog does not aim to be visually (near) exactly the same as the Vista+ native dialog.

This dialog is invoked by Dialogs.TTaskDialog.Execute on systems that do not support the native Vista+ dialog, and it is also used as a fallback in case the native Vista+ dialog fails (when passed invalid combination of arguments). The dialog therefore uses the Flags property of Dialogs.TTaskDialog, but not all of these flags are supported (yet) in the emulated dialog.

TaskDlgEmulation.pp is part of the Lazarus Component Library ( LCL). This unit was originally a part of the freeware Synopse mORMot framework, and licensed under a MPL/GPL/LGPL tri-license; version 1.19. It has been relicensed with permission from Arnaud Bouchez, the original author, and all contributors. The original name was SynTaskDialog.pas.

Added in LCL version 4.0 as replacement for the deprecated types in the lcltaskdialog.pas unit.

Classes and records

TLCLTaskDialogclassImplements an emulated (non-native) task dialog form.

Procedures and functions

ExecuteLCLTaskDialogfunctionExecutes an emulated task dialog for using the specified arguments.
IconMessagefunctionGets the title displayed on the task dialog for the specified main icon.

Types

TLCLTaskDialogFooterIconenumerationRepresents the available footer icons for an emulated task dialog.
TLCLTaskDialogIconenumerationRepresents the available main icons for an emulated task dialog.
TTaskDialogElementenumerationRepresents the textual display elements on a task dialog form.

Uses

An experiment, built from development snapshots. Not the official Free Pascal or Lazarus documentation.