lazarus/docs/xml/lcl/extdlgs.xml

2157 lines
68 KiB
XML

<?xml version="1.0" encoding="UTF-8"?>
<!--
Documentation for LCL (Lazarus Component Library) and LazUtils (Lazarus
Utilities) are published under the Creative Commons Attribution-ShareAlike 4.0
International public license.
https://creativecommons.org/licenses/by-sa/4.0/legalcode.txt
https://gitlab.com/freepascal.org/lazarus/lazarus/-/blob/main/docs/cc-by-sa-4-0.txt
Copyright (c) 1997-2025, by the Lazarus Development Team.
-->
<fpdoc-descriptions>
<package name="lcl">
<!--
====================================================================
ExtDlgs
====================================================================
-->
<module name="ExtDlgs">
<short>
Contains extended dialogs used for Calendar, Calculator and Picture Open/Save
tasks.
</short>
<descr>
<p>
<file>extdlgs.pas</file> contains extended dialogs available in Lazarus
Component Library (<b>LCL</b>) applications. It adds the following components
to the <b>Dialogs</b> tab in the Lazarus IDE Component Palette:
</p>
<ul>
<li>TOpenPictureDialog</li>
<li>TSavePictureDialog</li>
<li>TCalendarDialog</li>
<li>TCalculatorDialog</li>
</ul>
</descr>
<!-- unresolved type references -->
<element name="Types"/>
<element name="Classes"/>
<element name="SysUtils"/>
<element name="LResources"/>
<element name="LCLType"/>
<element name="LCLStrConsts"/>
<element name="LCLPlatformDef"/>
<element name="InterfaceBase"/>
<element name="Controls"/>
<element name="Dialogs"/>
<element name="Graphics"/>
<element name="ExtCtrls"/>
<element name="StdCtrls"/>
<element name="Forms"/>
<element name="Calendar"/>
<element name="Buttons"/>
<element name="CalcForm"/>
<element name="GraphType"/>
<element name="FileUtil"/>
<element name="LazFileUtils"/>
<element name="Masks"/>
<element name="TPreviewFileControl">
<short>
<var>TPreviewFileControl</var> - a windowed control allowing the contents of
a file to be previewed before opening.
</short>
<descr>
<p>
<var>TPreviewFileControl</var> is a <var>TWinControl</var> descendant which
implements a windowed control that allows the content in a file to be viewed
in a <var>TPreviewFileDialog</var> class instance.
</p>
<p>
TPreviewFileControl is the type used to implement the
<var>PreviewFileControl</var> property in <var>TPreviewFileDialog</var>.
</p>
</descr>
<seealso>
<link id="TPreviewFileDialog.PreviewFileControl"/>
</seealso>
</element>
<element name="TPreviewFileControl.FPreviewFileDialog"/>
<element name="TPreviewFileControl.WSRegisterClass" link="#lcl.lclclasses.TLCLComponent.WSRegisterClass"/>
<element name="TPreviewFileControl.GetControlClassDefaultSize" link="#lcl.controls.TControl.GetControlClassDefaultSize"/>
<element name="TPreviewFileControl.SetPreviewFileDialog">
<short>
Sets the value for the PreviewFileDialog property.
</short>
<descr/>
<seealso>
<link id="TPreviewFileControl.PreviewFileDialog"/>
</seealso>
</element>
<element name="TPreviewFileControl.SetPreviewFileDialog.AValue">
<short>New value for the property.</short>
</element>
<element name="TPreviewFileControl.CreateParams">
<descr>
<p>
Overridden to ensure proper handling of the WS_CHILD flag in Style in the
Parent control.
</p>
</descr>
<seealso>
<link id="#lcl.controls.TWinControl.CreateParams">TWinControl.CreateParams</link>
<link id="#lcl.lcltype.TCreateParams">TCreateParams</link>
</seealso>
</element>
<element name="TPreviewFileControl.CreateParams.Params">
<short>Creation parameters updated in the method.</short>
</element>
<element name="TPreviewFileControl.Create">
<short>Constructor for the class instance.</short>
<descr>
<p>
<var>Create</var> is the overridden constructor for the class instance, and
calls the inherited constructor. Create sets the value for the
<var>CompStyle</var> member (deprecated), and calls
<var>SetInitialBounds</var> to size the control using the values returned
from <var>GetControlClassDefaultSize</var>.
</p>
</descr>
<seealso>
<link id="TPreviewFileControl.GetControlClassDefaultSize"/>
<link id="#lcl.controls.TControl.SetInitialBounds">TControl.SetInitialBounds</link>
<link id="#lcl.controls.TWinControl.Create">TWinControl.Create</link>
</seealso>
</element>
<element name="TPreviewFileControl.Create.TheOwner">
<short>Owner for the class instance.</short>
</element>
<element name="TPreviewFileControl.PreviewFileDialog">
<short>Dialog which created the file preview control.</short>
<descr>
<p>
<var>PreviewFileDialog</var> is a <var>TPreviewFileDialog</var> property
which contains the dialog which created the file preview control. The value
in PreviewFileDialog is is assigned in the <var>CreatePreviewControl</var>
method in <var>TPreviewFileDialog</var>.
</p>
</descr>
<seealso>
<link id="TPreviewFileDialog.CreatePreviewControl"/>
</seealso>
</element>
<element name="TPreviewFileDialog">
<short>
<var>TPreviewFileDialog</var> - a dialog that allows the contents of a file
to be inspected before opening the file.
</short>
<descr>
<p>
<var>TPreviewFileDialog</var> is a <var>TOpenDialog</var> descendant which
implement a dialog used to preview and select a file on the local file
system. TPreviewFileDialog extends the ancestor class with additional
properties, methods, and events used to configure and execute the dialog.
</p>
</descr>
<seealso>
<link id="TPreviewFileControl"/>
<link id="#lcl.dialogs.TOpenDialog">TOpenDialog</link>
</seealso>
</element>
<element name="TPreviewFileDialog.FPreviewFileControl"/>
<element name="TPreviewFileDialog.GetPreviewFileControl">
<short>Gets the value for the PreviewFileControl property.</short>
<descr>
<p>
Calls <var>CreatePreviewControl</var> if a <var>TPreviewFileControl</var>
instance has not already been created for the dialog.
</p>
</descr>
<seealso>
<link id="TPreviewFileDialog.PreviewFileControl"/>
</seealso>
</element>
<element name="TPreviewFileDialog.GetPreviewFileControl.Result">
<short>Value for the property.</short>
</element>
<element name="TPreviewFileDialog.WSRegisterClass" link="#lcl.lclclasses.TLCLComponent.WSRegisterClass"/>
<element name="TPreviewFileDialog.CreatePreviewControl">
<short>
<var>CreatePreviewControl</var> - create an instance of the windowed control
used in the dialog.
</short>
<descr>
<p>
<var>CreatePreviewControl</var> is a procedure used to create and initialize
the class instance used in the <var>PreviewFileControl</var> property.
CreatePreviewControl create a <var>TPreviewFileControl</var> instance, sets
its <var>PreviewFileDialog</var> property to the current class, and calls the
<var>InitPreviewControl</var> method.
</p>
<p>
CreatePreviewControl is called from the <var>DoExecute</var> method in
<var>TPreviewFileDialog</var>.
</p>
</descr>
<seealso>
<link id="TPreviewFileDialog.PreviewFileControl"/>
<link id="TPreviewFileControl"/>
<link id="TPreviewFileDialog.DoExecute"/>
</seealso>
</element>
<element name="TPreviewFileDialog.InitPreviewControl">
<short>
<var>InitPreviewControl</var> - initializes the windowed control created for
the dialog.
</short>
<descr>
<p>
<var>InitPreviewControl</var> is a procedure used to initialize the
<var>PreviewFileControl</var> property used in the dialog. InitPreviewControl
sets the name for the control. InitPreviewControl is called from the
<var>CreatePreviewControl</var> method.
</p>
</descr>
<seealso>
<link id="TPreviewFileDialog.PreviewFileControl"/>
<link id="TPreviewFileDialog.CreatePreviewControl"/>
</seealso>
</element>
<element name="TPreviewFileDialog.DoExecute">
<short>Creates the PreviewFileControl and displays the dialog.</short>
<descr>
<p>
<var>DoExecute</var> is an overridden Boolean function in
<var>TPreviewFileDialog</var>.
</p>
<p>
DoExecute calls the <var>CreatePreviewControl</var> method to allocate
resources for the <var>PreviewFileControl</var> property. It calls the
inherited method to display the dialog, select a file on the local file
system, and get the return value for the method. The return value is
<b>True</b> when the dialog return value in <var>UserChoice</var> is
<var>mrOk</var>.
</p>
<p>
DoExecute is called from the <var>Execute</var> method in the
<var>TCommonDialog</var> ancestor class.
</p>
</descr>
<seealso>
<link id="TPreviewFileDialog.CreatePreviewControl"/>
<link id="TPreviewFileDialog.PreviewFileControl"/>
<link id="#lcl.dialogs.TCommonDialog.Execute">TCommonDialog.Execute</link>
<link id="#lcl.dialogs.TCommonDialog.UserChoice">TCommonDialog.UserChoice</link>
<link id="#lcl.dialogs.TOpenDialog.DoExecute">TOpenDialog.DoExecute</link>
</seealso>
</element>
<element name="TPreviewFileDialog.Create">
<short>Constructor for the class instance.</short>
<descr>
<p>
<var>Create</var> is the overridden constructor for the class instance.
Create calls the inherited constructor, and sets the value in CompStyle
(deprecated) to <var>csPreviewFileDialog</var>.
</p>
</descr>
<seealso>
<link id="#lcl.lcltype.csPreviewFileDialog">csPreviewFileDialog</link>
</seealso>
</element>
<element name="TPreviewFileDialog.Create.TheOwner">
<short>Owner of the class instance.</short>
</element>
<element name="TPreviewFileDialog.PreviewFileControl">
<short>
Windowed control used to preview the contents of a file in the dialog.
</short>
<descr>
<p>
<var>PreviewFileControl</var> is a read-only <var>TPreviewFileControl</var>
property which contains the windowed control used to preview the contents of
a file in the dialog. The resources for the property are allocated in the
<var>CreatePreviewControl</var> method called when the dialog is executed.
The property value is unassigned (contains <b>Nil</b>) prior to calling
<var>Execute</var>.
</p>
</descr>
<seealso>
<link id="TPreviewFileControl"/>
<link id="TPreviewFileDialog.CreatePreviewControl"/>
<link id="#lcl.dialogs.TCommonDialog.Execute">TCommonDialog.Execute</link>
</seealso>
</element>
<element name="TOpenPictureDialog">
<short>
<var>TOpenPictureDialog</var> - a preview dialog that shows a preview of a
picture before opening the file.
</short>
<descr>
<p>
<var>TOpenPictureDialog</var> is a <var>TPreviewFileDialog</var> descendant
which implements a dialog used to preview and select image files using common
image formats recognized for the platform or OS. It provides
<var>DefaultFilter</var> and <var>Filter</var> properties which use file
masks for file extensions supported for the <var>TGraphic</var> class. The
<var>ImageCtrl</var> property provides the image preview for the dialog.
</p>
</descr>
<seealso>
<link id="TOpenPictureDialog.ImageCtrl"/>
<link id="TOpenPictureDialog.DefaultFilter"/>
<link id="TOpenPictureDialog.Filter"/>
</seealso>
</element>
<element name="TOpenPictureDialog.FDefaultFilter"/>
<element name="TOpenPictureDialog.FImageCtrl"/>
<element name="TOpenPictureDialog.FPictureGroupBox"/>
<element name="TOpenPictureDialog.FPreviewFilename"/>
<element name="TOpenPictureDialog.WSRegisterClass" link="#lcl.lclclasses.TLCLComponent.WSRegisterClass"/>
<element name="TOpenPictureDialog.IsFilterStored">
<short>
<var>IsFilterStored</var> - returns <b>True</b> if a filter is stored.
</short>
<descr>
<p>
<var>IsFilterStored</var> is a <var>Boolean</var> function used to get the
value for the storage specifier for the <var>Filter</var> property. The
return value indicates if the value in Filter is included in the content read
and written using the LCL component streaming mechanism. It returns
<b>True</b> when the value in Filter is different than the value in
<var>DefaultFilter</var>.
</p>
</descr>
<seealso>
<link id="TOpenPictureDialog.Filter"/>
<link id="TOpenPictureDialog.DefaultFilter"/>
</seealso>
</element>
<element name="TOpenPictureDialog.IsFilterStored.Result">
<short>
<b>True</b> when Filter is included in the LCL component streaming content.
</short>
</element>
<element name="TOpenPictureDialog.ImageCtrl">
<short>
TImage used to preview the content in an image file.
</short>
<descr>
<var>ImageCtrl</var> is a read-only TImage property which contains the image
used to preview the content for an image file on the local file system.
</descr>
<seealso>
<link id="TOpenPictureDialog.ClearPreview"/>
<link id="TOpenPictureDialog.UpdatePreview"/>
</seealso>
</element>
<element name="TOpenPictureDialog.PictureGroupBox">
<short>
<var>PictureGroupBox</var> - a groupbox related to a single picture ???
</short>
<descr>
<p>
<var>PictureGroupBox</var> is a read-only <var>TGroupBox</var> property which
provides a container for the <var>ImageCtrl</var> in the dialog.
PictureGroupBox is assigned as the Parent for the ImageCtrl property, and
provides the bounds to which the ImageCtrl is aligned. In turn,
PictureGroupBox uses the PreviewFileControl as its Parent.
</p>
</descr>
<seealso>
<link id="TOpenPictureDialog.ImageCtrl"/>
</seealso>
</element>
<element name="TOpenPictureDialog.InitPreviewControl">
<short>Initializes the PreviewFileControl for the dialog.</short>
<descr>
<p>
<var>InitPreviewControl</var> is overridden in <var>TOpenPictureDialog</var>.
InitPreviewControl calls the inherited method, and ensures that
<var>PreviewFileControl</var> is assigned as the Parent control for
<var>PictureGroupBox</var>. InitPreviewControl is called from the inherited
<var>CreatePreviewControl</var> method.
</p>
</descr>
<seealso>
<link id="TPreviewFileDialog.PreviewFileControl"/>
<link id="TPreviewFileDialog.CreatePreviewControl"/>
<link id="TPreviewFileDialog.InitPreviewControl"/>
<link id="TOpenPictureDialog.ImageCtrl"/>
</seealso>
</element>
<element name="TOpenPictureDialog.ClearPreview">
<short>
<var>ClearPreview</var> - clears the preview area.
</short>
<descr>
<p>
<var>ClearPreview</var> is a procedure used to clear the image content and
the caption displayed in the dialog. ClearPreview is called from the
<var>DoShow</var>, <var>DoClose</var>, and <var>UpdatePreview</var> methods.
</p>
</descr>
<seealso>
<link id="TOpenPictureDialog.ImageCtrl"/>
<link id="TOpenPictureDialog.DoShow"/>
<link id="TOpenPictureDialog.DoClose"/>
<link id="TOpenPictureDialog.UpdatePreview"/>
</seealso>
</element>
<element name="TOpenPictureDialog.UpdatePreview">
<short>
Loads the preview image for the current file name, or clears the preview
image when the file is not usable.
</short>
<descr>
<p>
<var>UpdatePreview</var> is a procedure used to update the preview image file
name and the image caption for the open picture dialog. The preview image file
name is based on the current value in the FileName property. No actions are
performed in the method if the preview image file name already contains the
value in FileName.
</p>
<p>
FileName must be a valid qualified path on the local file system, and have
read permissions. The image file is loaded into the <var>ImageCtrl</var>
on the dialog. The caption in <var>PictureGroupBox</var> is updated to display
the Width and Height for the stored image in the format <b>'(%dx%d)'</b>
(Width x Height).
</p>
<p>
The <var>ClearPreview</var> method is called if the file path or name is not
valid, not successfully loaded (due to permissions or image format), or the
PictureGroupBox is not used for the platform (as with Windows Vista and later
versions where the preview image is natively supported).
</p>
<p>
UpdatePreview is called from the <var>DoSelectionChange</var> method when the
selected file name for the preview dialog has changed. It is executed before
an assigned OnSelectionChange event handler for the dialog.
</p>
</descr>
<seealso>
<link id="TOpenPictureDialog.ImageCtrl"/>
<link id="TOpenPictureDialog.PictureGroupBox"/>
<link id="TOpenPictureDialog.ClearPreview"/>
<link id="#lcl.dialogs.TOpenDialog.OnSelectionChange">TOpenDialog.OnSelectionChange</link>
<link id="#lcl.dialogs.TFileDialog.FileName">TFileDialog.FileName</link>
</seealso>
</element>
<element name="TOpenPictureDialog.Create">
<short>Constructor for the class instance.</short>
<descr>
<p>
<var>Create</var> is the overridden constructor for the class instance, and
calls the inherited constructor.
</p>
<p>
Creates sets the value in <var>DefaultFilter</var> to the all files mask for
common image format used on the platform or OS. This value is also assigned
to the <var>Filter</var> property for the dialog.
</p>
<p>
Create allocates resources needed for the <var>PictureGroupBox</var> and
<var>ImageCtrl</var> properties, and sets their parentage, alignment, and
display properties.
</p>
</descr>
<seealso>
<link id="TOpenPictureDialog.PictureGroupBox"/>
<link id="TOpenPictureDialog.ImageCtrl"/>
<link id="TOpenPictureDialog.DefaultFilter"/>
<link id="TOpenPictureDialog.Filter"/>
<link id="#lcl.graphics.GraphicFilter">GraphicFilter</link>
</seealso>
</element>
<element name="TOpenPictureDialog.Create.TheOwner">
<short>Owner for the class instance.</short>
</element>
<element name="TOpenPictureDialog.DoClose">
<short>
Performs actions needed when the dialog is closed.
</short>
<descr>
<p>
<var>DoClose</var> is an overridden method used to perform actions needed
when the dialog is closed. DoClose calls <var>ClearPreview</var> to remove
image content displayed in <var>ImageCtrl</var> and to clear the caption
assigned to <var>PictureGroupBox</var>.
</p>
<p>
DoClose calls the inherited method to signal the <var>OnClose</var> event
handler (when assigned).
</p>
</descr>
<seealso>
<link id="TOpenPictureDialog.ClearPreview"/>
<link id="TOpenPictureDialog.PictureGroupBox"/>
<link id="TOpenPictureDialog.ImageCtrl"/>
<link id="#lcl.dialogs.TCommonDialog.OnClose">TCommonDialog.OnClose</link>
<link id="#lcl.dialogs.TCommonDialog.DoClose">TCommonDialog.DoClose</link>
</seealso>
</element>
<element name="TOpenPictureDialog.DoSelectionChange">
<short>
Performs actions needed when the selected file name for the dialog is changed.
</short>
<descr>
<p>
<var>DoSelectionChange</var> is an overridden method used to perform actions
needed when the selected file name for the dialog is changed.
DoSelectionChange calls <var>UpdatePreview</var> to update the
<var>PreviewFileName</var>, <var>ImageCtrl</var> and
<var>PictureGroupBox</var> properties.
</p>
<p>
DoSelectionChange calls the inherited method to signal the
<var>OnSelectionChange</var> event handler (when assigned).
</p>
</descr>
<seealso>
<link id="TOpenPictureDialog.ImageCtrl"/>
<link id="TOpenPictureDialog.PictureGroupBox"/>
<link id="#lcl.dialogs.TOpenDialog.OnSelectionChange">TOpenDialog.OnSelectionChange</link>
<link id="#lcl.dialogs.TOpenDialog.DoSelectionChange">TOpenDialog.DoSelectionChange</link>
</seealso>
</element>
<element name="TOpenPictureDialog.DoShow">
<short>
Performs actions needed to display the preview dialog in its initial state.
</short>
<descr>
<p>
<var>DoShow</var> is an overridden procedure used to display the Picture File
Open preview dialog. DoShow calls <var>ClearPreview</var> to set the dialog
to the state needed prior to selecting an image file name in the preview
dialog.
</p>
<p>
DoShow calls the inherited method to signal the <var>OnShow</var> event
handler (when assigned).
</p>
</descr>
<seealso>
<link id="TOpenPictureDialog.ClearPreview"/>
<link id="#lcl.dialogs.TCommonDialog.OnShow">TCommonDialog.OnShow</link>
<link id="#lcl.dialogs.TCommonDialog.DoShow">TCommonDialog.DoShow</link>
</seealso>
</element>
<element name="TOpenPictureDialog.GetFilterExt">
<short>
<var>GetFilterExt</var> - returns the extension for filtering filenames.
</short>
<descr>
<p>
<var>GetFilterExt</var> is a <var>String</var> function used to get the file
extension for the value in the Filter property. GetFilterExt parses the value
in <var>Filter</var>, and ignores the all files mask (<b>'*.*'</b>) in favor
of actual file extensions included in the property.
</p>
<p>
The return value contains the file extension found in the Filter property. If
no file extension is found in Filter, the value in <var>DefaultExt</var> is
used as the return value.
</p>
<p>
GetFilterEx is used by the Lazarus IDE in the implementation of property
editors for <var>TGraphic</var> and <var>TImageList</var>.
</p>
</descr>
<seealso>
<link id="TOpenPictureDialog.Filter"/>
<link id="#lcl.dialogs.TFileDialog.DefaultExt">TFileDialog.DefaultExt</link>
<link id="#lcl.graphics.TGraphic">TGraphic</link>
<link id="#lcl.imglist.TCustomImageList">TCustomImageList</link>
</seealso>
</element>
<element name="TOpenPictureDialog.GetFilterExt.Result">
<short>
File extension found in the method, or an empty string when no extension is
available.
</short>
</element>
<element name="TOpenPictureDialog.DefaultFilter">
<short>
<var>DefaultFilter</var> - the default filename filter.
</short>
<descr>
<p>
<var>DefaultFilter</var> is a read-only <var>String</var> property which
provides the default value for the <var>Filter</var> property. DefaultFilter
is populated in the <var>Create</var> constructor with the common image
formats supported for the platform or OS. Its value is assigned as the
default value for the Filter property in the constructor.
</p>
</descr>
<seealso>
<link id="TOpenPictureDialog.Create"/>
<link id="TOpenPictureDialog.Filter"/>
<link id="#lcl.graphics.GraphicFilter">GraphicFilter</link>
</seealso>
</element>
<element name="TOpenPictureDialog.Filter">
<short>
Contains a delimited list of descriptions and extensions for file available
in the dialog.
</short>
<descr>
<p>
<var>Filter</var> is a <var>String</var> property which contains a delimited
list of file name filters available in the dialog. Each value in the
delimited list is separated by a Pipe (or vertical bar) character ('|') and
consists of a description and file extension for files matching the filter
value. For example:
</p>
<code>
'All files|*.*|Lazarus Project files|*.lpr|Pascal units|*.pas;*.pp'
</code>
<p>
The initial value for Filter is assigned in <var>Create</var> using the value
from the <var>DefaultFilter</var> property.
</p>
<p>
Use <var>GetFilterExt</var> to get the file extension for the current Filter
value selected in the dialog. Use <var>FilterIndex</var> to determine the
position for the selected file filter.
</p>
</descr>
<seealso>
<link id="TOpenPictureDialog.Create"/>
<link id="TOpenPictureDialog.DefaultFilter"/>
<link id="TOpenPictureDialog.GetFilterExt"/>
<link id="#lcl.dialogs.TFileDialog.Filter">TFileDialog.Filter</link>
<link id="#lcl.dialogs.TFileDialog.FilterIndex">TFileDialog.FilterIndex</link>
</seealso>
</element>
<element name="TSavePictureDialog">
<short>
<var>TSavePictureDialog</var> - a dialog for saving the picture in the
current buffer to a file.
</short>
<descr>
<p>
<var>TSavePictureDialog</var> is a <var>TOpenPictureDialog</var> descendant
which implements a dialog used to save a picture to a file.
TSavePictureDialog provides the same preview capabilities implemented in
ancestor classes, and provides an overridden <var>DefaultTitle</var> method
to set the title displayed in the dialog.
</p>
</descr>
<seealso>
<link id="TSavePictureDialog.DefaultTitle"/>
<link id="TOpenPictureDialog"/>
</seealso>
</element>
<element name="TSavePictureDialog.WSRegisterClass" link="#lcl.lclclasses.TLCLComponent.WSRegisterClass"/>
<element name="TSavePictureDialog.DefaultTitle">
<short>Gets the default value for the Title property.</short>
<descr>
<p>
<var>DefaultTitle</var> is an overridden <var>String</var> function in
<var>TSavePictureDialog</var>. It returns the value in
<var>rsfdFileSaveAs</var> as the <var>Title</var> used for the dialog.
DefaultTitle is used in the constructor in <var>TCommonDialog</var> to set
the value for its <var>Title</var> property.
</p>
</descr>
<seealso>
<link id="#lcl.dialogs.TOpenDialog.DefaultTitle">TOpenDialog.DefaultTitle</link>
<link id="#lcl.dialogs.TCommonDialog.Create">TCommonDialog.Create</link>
<link id="#lcl.dialogs.TCommonDialog.Title">TCommonDialog.Title</link>
<link id="#lcl.lclstrconsts.rsfdFileSaveAs">rsfdFileSaveAs</link>
</seealso>
</element>
<element name="TSavePictureDialog.DefaultTitle.Result">
<short>Default value for the Title property.</short>
</element>
<element name="TSavePictureDialog.Create">
<short>Constructor for the class instance.</short>
<descr>
<p>
<var>Create</var> is the overridden constructor for the class instance, and
calls the inherited constructor. Create sets the value in the
<var>FCompStyle</var> member (deprecated) to the value
<var>csSaveFileDialog</var>.
</p>
</descr>
<seealso/>
</element>
<element name="TSavePictureDialog.Create.TheOwner">
<short>Owner of the class instance.</short>
</element>
<element name="TExtCommonDialog">
<short>
The common base class for custom drawn dialogs (Calculator and Calendar).
</short>
<descr>
<p>
<var>TExtCommonDialog</var> is a <var>TCommonDialog</var> descendant which
implements a common base class for custom drawn dialogs such as
<var>TCalculatorDialog</var> and <var>TCalendarDialog</var>. It provides
additional properties used to set the position for the form displayed in the
dialog.
</p>
</descr>
<seealso>
<link id="TExtCommonDialog.DlgForm"/>
<link id="TExtCommonDialog.DialogPosition"/>
<link id="TExtCommonDialog.Left"/>
<link id="TExtCommonDialog.Top"/>
<link id="TCalculatorDialog"/>
<link id="TCalendarDialog"/>
<link id="#lcl.dialogs.TCommonDialog">TCommonDialog</link>
</seealso>
</element>
<element name="TExtCommonDialog.FDialogPosition"/>
<element name="TExtCommonDialog.FLeft"/>
<element name="TExtCommonDialog.FTop"/>
<element name="TExtCommonDialog.FDlgForm"/>
<element name="TExtCommonDialog.GetLeft">
<short>Gets the value for the Left property.</short>
<descr/>
<seealso>
<link id="TExtCommonDialog.Left"/>
</seealso>
</element>
<element name="TExtCommonDialog.GetLeft.Result">
<short>Value for the property.</short>
</element>
<element name="TExtCommonDialog.GetHeight">
<short>Gets the value for the Height property.</short>
<descr/>
<seealso>
<link id="#lcl.dialogs.TCommonDialog.GetHeight">TCommonDialog.GetHeight</link>
</seealso>
</element>
<element name="TExtCommonDialog.GetHeight.Result">
<short>Value for the property.</short>
</element>
<element name="TExtCommonDialog.GetTop">
<short>Gets the value for the Top property.</short>
<descr/>
<seealso>
<link id="TExtCommonDialog.Top"/>
</seealso>
</element>
<element name="TExtCommonDialog.GetTop.Result">
<short>Value for the property.</short>
</element>
<element name="TExtCommonDialog.GetWidth">
<short>Gets the value for the Width property.</short>
<descr/>
<seealso>
<link id="#lcl.dialogs.TCommonDialog.GetWidth">TCommonDialog.GetWidth</link>
</seealso>
</element>
<element name="TExtCommonDialog.GetWidth.Result">
<short>Value for the property.</short>
</element>
<element name="TExtCommonDialog.SetLeft">
<short>Sets the value for the Left property.</short>
<descr/>
<seealso>
<link id="TExtCommonDialog.Left"/>
</seealso>
</element>
<element name="TExtCommonDialog.SetLeft.AValue">
<short>New value for the property.</short>
</element>
<element name="TExtCommonDialog.SetTop">
<short>Sets the value for the Top property.</short>
<descr/>
<seealso>
<link id="TExtCommonDialog.Top"/>
</seealso>
</element>
<element name="TExtCommonDialog.SetTop.AValue">
<short>New value for the property.</short>
</element>
<element name="TExtCommonDialog.DlgForm">
<short>
Contains the form displayed modally for the custom-drawn dialog.
</short>
<descr>
<p>
<var>DlgForm</var> is a <var>TCustomForm</var> property which contains the
form displayed with the content for the custom-drawn dialog.
</p>
<p>
The value in DlgForm is assigned in descendent classes to use the form type
required for the dialog. Changes to values in the <var>Top</var>,
<var>Left</var>, and <var>DialogPosition</var> properties are applied to the
corresponding properties in DlgForm.
</p>
</descr>
<seealso>
<link id="TExtCommonDialog.DialogPosition"/>
<link id="TExtCommonDialog.Left"/>
<link id="TExtCommonDialog.Top"/>
<link id="TCommonDialog.Height"/>
<link id="TCommonDialog.Width"/>
</seealso>
</element>
<element name="TExtCommonDialog.Create">
<short>Constructor for the class instance.</short>
<descr>
<var>Create</var> is the overridden constructor for the class instance, and
calls the inherited method. Create sets the default value for the
<var>DialogPosition</var> property to <var>poMainFormCenter</var>.
</descr>
<seealso>
<link id="TExtCommonDialog.DialogPosition"/>
<link id="#lcl.forms.TPosition">TPosition</link>
<link id="#lcl.dialogs.TCommonDialog.Create">CommonDialog.Create</link>
</seealso>
</element>
<element name="TExtCommonDialog.Create.AOwner">
<short>Owner of the class instance.</short>
</element>
<element name="TExtCommonDialog.Destroy">
<short>Destructor for the class instance.</short>
<descr/>
<seealso>
<link id="#lcl.lclclasses.TLCLComponent.Destroy">TLCLComponent.Destroy</link>
</seealso>
</element>
<element name="TExtCommonDialog.Left">
<short>Contains the left coordinate for the dialog form.</short>
<descr>
<p>
<var>Left</var> is an <var>Integer</var> property which contains the client
coordinate for the left-hand edge of the dialog. Read and write access for
the property value are redirected to the Left property in DlgForm (when
assigned).
</p>
<p>
Use the Top <var>property</var> to access the coordinate for the top edge of
the dialog.
</p>
</descr>
<seealso>
<link id="TExtCommonDialog.DlgForm"/>
<link id="TExtCommonDialog.Top"/>
</seealso>
</element>
<element name="TExtCommonDialog.Top">
<short>Contains the top coordinate for the dialog form.</short>
<descr>
<p>
<var>Top</var> is an <var>Integer</var> property which contains the client
coordinate for the top edge of the dialog. Read and write access for the
property value are redirected to the Top property in DlgForm (when assigned).
</p>
<p>
Use the <var>Left</var> property to access the coordinate for the left-hand
edge of the dialog.
</p>
</descr>
<seealso>
<link id="TExtCommonDialog.DlgForm"/>
<link id="TExtCommonDialog.Left"/>
</seealso>
</element>
<element name="TExtCommonDialog.DialogPosition">
<short>
Specifies the position where the dialog is displayed.
</short>
<descr>
<p>
<var>DialogPosition</var> is a <var>TPosition</var> property which specifies
the position where the dialog is displayed. The default value for the
property is <var>poMainFormCenter</var>, and indicates that the dialog is
centered both horizontally and vertically on the main form for the
application.
</p>
<p>
See <link id="#lcl.forms.TPosition">TPosition</link> for more information
about the values in the enumeration and their meanings.
</p>
<p>
The value in DialogPosition is used in descendent classes when the dialog is
Executed.
</p>
</descr>
<seealso>
<link id="TCalculatorDialog.Execute"/>
<link id="TCalendarDialog.Execute"/>
<link id="#lcl.forms.TPosition">TPosition</link>
</seealso>
</element>
<element name="TCalculatorDialog">
<short>
Implements a pop-up calculator dialog used to perform simple calculations and
return the value.
</short>
<descr>
<p>
<var>TCalculatorDialog</var> is a <var>TExtCommonDialog</var> descendant
which implements a pop-up calculator dialog used to perform calculations and
return the result in the Value property. Value uses the Double type, and can
be represented using the number of digits in the Precision property.
</p>
<p>
TCalculatorDialog uses a TCalculatorForm instance in the DlgForm property
which includes separate panels to display the input value, numeric keys,
labels, and other buttons on the dialog form. A CalculatorLayout property
allows use of a detailed or a simplified view on the form. Properties are
provided to set the colors used for components on DlgForm, including:
</p>
<ul>
<li>ColorBtnDigits</li>
<li>ColorBtnMemory</li>
<li>ColorBtnOk</li>
<li>ColorBtnCancel</li>
<li>ColorBtnClear</li>
<li>ColorBtnOthers</li>
<li>ColorDisplayText</li>
<li>ColorDisplayBack</li>
</ul>
<p>
Use the Memory property to store or retrieve a value for the calculator
dialog.
</p>
</descr>
<seealso>
<link id="TExtCommonDialog"/>
<link id="#lcl.calcform.TCalculatorForm">TCalculatorForm</link>
</seealso>
</element>
<element name="TCalculatorDialog.FLayout"/>
<element name="TCalculatorDialog.FValue"/>
<element name="TCalculatorDialog.FMemory"/>
<element name="TCalculatorDialog.FPrecision"/>
<element name="TCalculatorDialog.FBeepOnError"/>
<element name="TCalculatorDialog.FOnChange"/>
<element name="TCalculatorDialog.FOnCalcKey"/>
<element name="TCalculatorDialog.FOnDisplayChange"/>
<element name="TCalculatorDialog.FDialogScale"/>
<element name="TCalculatorDialog.FColorBtnDigits"/>
<element name="TCalculatorDialog.FColorBtnOthers"/>
<element name="TCalculatorDialog.FColorBtnMemory"/>
<element name="TCalculatorDialog.FColorBtnOk"/>
<element name="TCalculatorDialog.FColorBtnCancel"/>
<element name="TCalculatorDialog.FColorBtnClear"/>
<element name="TCalculatorDialog.FColorDisplayText"/>
<element name="TCalculatorDialog.FColorDisplayBack"/>
<element name="TCalculatorDialog.GetDisplay">
<short>Gets the value for the CalcDisplay property.</short>
<descr>
<p>
<var>GetDisplay</var> is a <var>Double</var> function used to get the display
value from the form instance in <var>DlgForm</var>. If DlgForm has not been
assigned, the <var>Value</var> property is used as the return value for the
method.
</p>
</descr>
<seealso>
<link id="TCalculatorDialog.CalcDisplay"/>
</seealso>
</element>
<element name="TCalculatorDialog.GetDisplay.Result">
<short>Value for the property.</short>
</element>
<element name="TCalculatorDialog.SetDialogScale">
<short>Sets the value for the DialogScale property.</short>
<descr/>
<seealso>
</seealso>
<link id="TCalculatorDialog.DialogScale"/>
</element>
<element name="TCalculatorDialog.SetDialogScale.AValue">
<short>New value for the property.</short>
</element>
<element name="TCalculatorDialog.WSRegisterClass" link="#lcl.lclclasses.TLCLComponent.WSRegisterClass"/>
<element name="TCalculatorDialog.OnDialogClose">
<short>
Implements the event handler signalled when the dialog is closed.
</short>
<descr>
<p>
<var>OnDialogClose</var> implements the event handler signalled when the
dialog form is closed. OnDialogClose calls the DoClose method to execute the
OnClose event handler (when assigned).
</p>
<p>
<var>OnDialogClose</var> is assigned as the <var>OnClose</var> event handler
for the form in <var>DlgForm</var> in the <var>Execute</var> method.
</p>
</descr>
<seealso>
<link id="TCalculatorDialog.OnDialogClose"/>
<link id="#lcl.dialogs.TCommonDialog.OnClose">TCommonDialog.OnClose</link>
<link id="#lcl.dialogs.TCommonDialog.Execute">TCommonDialog.Execute</link>
</seealso>
</element>
<element name="TCalculatorDialog.OnDialogClose.Sender">
<short>Object for the event notification.</short>
</element>
<element name="TCalculatorDialog.OnDialogClose.CloseAction">
<short>Action performed to close the dialog.</short>
</element>
<element name="TCalculatorDialog.DialogShow">
<short>
Implements the event handler signalled when the dialog is displayed.
</short>
<descr>
<p>
<var>DialogShow</var> implements the event handler signalled when the
dialog form is displayed. DialogShow calls the <var>DoShow</var> method to
signal the <var>OnShow</var> event handler (when assigned).
</p>
<p>
DialogShow is assigned as the <var>OnShow</var> event handler for the form
in <var>DlgForm</var> in the <var>Execute</var> method.
</p>
</descr>
<seealso>
<link id="TCalculatorDialog.Execute"/>
<link id="#lcl.dialogs.TCommonDialog.OnShow">TCommonDialog.OnShow</link>
</seealso>
</element>
<element name="TCalculatorDialog.OnDialogShow.Sender">
<short>Object for the event notification.</short>
</element>
<element name="TCalculatorDialog.DialogCloseQuery">
<short>
Implements the event handler signalled to determine if the dialog can be
closed.
</short>
<descr>
<p>
<var>DialogCloseQuery</var> implements the event handler signalled to
determine if the dialog can be closed. DialogCloseQuery sets the value in
the <var>UserChoice</var> property to the modal result returned by the dialog
form in <var>DlgForm</var>. It calls <var>DoCanClose</var> to signal the
<var>OnCanClose</var> event handler (when assigned).
</p>
<p>
DialogCloseQuery is assigned as the <var>OnCloseQuery</var> event handler
for the form in DlgForm in the <var>Execute</var> method.
</p>
</descr>
<seealso>
<link id="#lcl.dialogs.TCommonDialog.Execute">TCommonDialog.Execute</link>
<link id="#lcl.dialogs.TCommonDialog.OnCanClose">TCommonDialog.OnCanClose</link>
</seealso>
</element>
<element name="TCalculatorDialog.DialogCloseQuery.Sender">
<short>Object for the event notification.</short>
</element>
<element name="TCalculatorDialog.DialogCloseQuery.CanClose">
<short><b>True</b> when the dialog can be closed.</short>
</element>
<element name="TCalculatorDialog.Change">
<short>
<var>Change</var> - software emulator for the <var>OnChange</var> event ???
</short>
<descr>
<p>
<var>Change</var> is a procedure used to perform actions needed when the
dialog has been changed. Change signals the <var>OnChange</var> event handler
(when assigned).
</p>
</descr>
<seealso>
<link id="TCalculatorDialog.OnChange"/>
</seealso>
</element>
<element name="TCalculatorDialog.CalcKey">
<short>
Implements the event handler signalled to process keys in the dialog.
</short>
<descr>
<p>
<var>CalcKey</var> is a procedure which implements the event handler
signalled to process keys in the dialog. CalcKey signals the
<var>OnCalcKey</var> event handler (when assigned).
</p>
<p>
CalcKey is assigned as the <var>OnCalcKey</var> event handler for the
TCalculatorForm instance created in the <var>Execute</var> method.
</p>
</descr>
<seealso>
<link id="TCalculatorForm.OnCalcKey"/>
<link id="TCalculatorDialog.OnCalcKey"/>
<link id="TCalculatorDialog.Execute"/>
</seealso>
</element>
<element name="TCalculatorDialog.CalcKey.Key">
<short>Key examined in the event handler.</short>
</element>
<element name="TCalculatorDialog.DefaultTitle">
<short>
Gets the default value used in the Title property for the calculator dialog.
</short>
<descr>
<p>
<var>DefaultTitle</var> is an overridden <var>String</var> function which
gets the default value used in the <var>Title</var> property for the
calculator dialog. The return value is set to the <var>rsCalculator</var>
resource string in <var>TCalculatorDialog</var>.
</p>
<p>
The value from DefaultTitle is assigned to the Title property in the
constructor for the class instance.
</p>
</descr>
<seealso>
<link id="TCalculatorDialog.Create"/>
<link id="#lcl.dialogs.TCommonDialog.Title">TCommonDialog.Title</link>
<link id="#lcl.dialogs.TCommonDialog.Create">TCommonDialog.Create</link>
<link id="#lcl.dialogs.TCommonDialog.DefaultTitle">TCommonDialog.DefaultTitle</link>
</seealso>
</element>
<element name="TCalculatorDialog.DefaultTitle.Result">
<short>
Default value for the Title property.
</short>
</element>
<element name="TCalculatorDialog.DisplayChange">
<short>
Implements the event handler signalled when the calculator display has been
changed on the dialog form.
</short>
<descr>
<p>
<var>DisplayChange</var> signals the OnDisplayChange event handler (when
assigned) to perform actions needed for the update. DisplayChange is used as
the handler routine for the OnDisplayChange property in TCalculatorForm. It
is assigned when the calculator form instance is created and configured in
the Execute method. It allows the dialog form to notify the dialog component
when its calculator panel has been updated.
</p>
</descr>
<seealso/>
</element>
<element name="TCalculatorDialog.Create">
<short>Constructor for the class instance.</short>
<descr>
<p>
<var>Create</var> is the overridden constructor for the
<var>TCalculatorDialog</var> class. It calls the inherited method on entry,
and sets the default values for properties including:
</p>
<ul>
<li>Precision</li>
<li>BeepOnError</li>
<li>DialogScale</li>
<li>CalculatorLayout</li>
<li>ColorBtnDigits</li>
<li>ColorBtnOthers</li>
<li>ColorBtnMemory</li>
<li>ColorBtnOk</li>
<li>ColorBtnCancel</li>
<li>ColorBtnClear</li>
<li>ColorDisplayText</li>
<li>ColorDisplayBack</li>
</ul>
</descr>
<seealso>
<link id="TExtCommonDialog.Create"/>
</seealso>
</element>
<element name="TCalculatorDialog.Create.AOwner">
<short>Owner of the class instance.</short>
</element>
<element name="TCalculatorDialog.Destroy">
<short>Destructor for the class instance.</short>
<descr>
<p>
<var>Destroy</var> is the overridden destructor for the
<var>TCalculatorDialog</var> class. Destroy frees references to handler
routines assigned to the OnChange and OnDisplayChange properties. It calls
the inherited method prior to exit.
</p>
</descr>
<seealso>
<link id="TExtCommonDialog.Destroy"/>
</seealso>
</element>
<element name="TCalculatorDialog.Execute">
<short>
Creates, configures, and displays the form for the calculator dialog.
</short>
<descr>
<p>
<var>Execute</var> is an overridden <var>Boolean</var> function used to
create, configure, display, and capture the result from the form for the
calculator dialog. Execute calls <var>CreateCalculatorForm</var> to create
the <var>TCalculatorForm</var> in the <var>DlgForm</var> property, and sets
the event handlers for the form to methods defined in the class instance. For
example:
</p>
<dl>
<dt>DlgForm.OnCalcKey</dt>
<dd>Set to the CalcKey method</dd>
<dt>DlgForm.OnDisplayChange</dt>
<dd>Set to the DisplayChange method</dd>
<dt>DlgForm.OnShow</dt>
<dd>Set to the DialogShow method</dd>
<dt>DlgForm.OnClose</dt>
<dd>Set to the DialogClose method</dd>
<dt>DlgForm.OnCloseQuery</dt>
<dd>Set to the DialogCloseQuery method</dd>
</dl>
<p>
When <var>DialogScale</var> contains any value other than <b>100</b>, the
scaling percentage is applied to DlgForm.
</p>
<p>
The value in <var>DialogPosition</var> is stored in DlgForm as well. At
design-time, the dialog position is always aligned to the center of the
screen (or current monitor). When DialogPosition is <var>poDesigned</var>,
the form coordinates in DlgForm are set to the values in the <var>Left</var>
and <var>Top</var> properties. The content stored in the <var>Title</var>,
<var>Memory</var>, <var>Precision</var>, and <var>Value</var> properties are
copied into the corresponding properties in DlgForm.
</p>
<p>
Execute calls the <var>ShowModal</var> method in DlgForm to display the modal
calculator dialog form. The return value for the method is set to <b>True</b>
when the modal result from the form is <var>mrOk</var>. When the result is
<b>True</b>, the <var>Memory</var> and <var>Value</var> properties are
updated with the values form the dialog form. The <var>Change</var> method is
called when the Value property has been altered.
</p>
<p>
The coordinates for the form are captured on exit, and stored in the
<var>Left</var> and <var>Top</var> properties. The dimensions for the form
(Width and Height) are also stored.
</p>
<p>
Execute frees the resources allocated to the DlgForm property prior to exit
from the method.
</p>
</descr>
<seealso>
<link id="TCalculatorDialog.Title"/>
<link id="TCalculatorDialog.Memory"/>
<link id="TCalculatorDialog.Precision"/>
<link id="TCalculatorDialog.Value"/>
<link id="TExtCommonDialog.DialogPosition"/>
<link id="TExtCommonDialog.Left"/>
<link id="TExtCommonDialog.Top"/>
<link id="#lcl.calcform.CreateCalculatorForm">CreateCalculatorForm</link>
<link id="#lcl.calcform.TCalculatorForm">TCalculatorForm</link>
<link id="#lcl.dialogs.TCommonDialog.Execute">TCommonDialog.Execute</link>
</seealso>
</element>
<element name="TCalculatorDialog.Execute.Result">
<short><b>True</b> when the modal result for the form is mrOk.</short>
</element>
<element name="TCalculatorDialog.CalcDisplay">
<short>
<var>CalcDisplay</var> - the current numeric value in the main calculator
display.
</short>
<descr>
<p>
<var>CalcDisplay</var> is a read-only <var>Double</var> property which
contains the current numeric value for the calculator. The property value is
read from the <var>TCalculatorForm</var> instance in <var>DlgForm</var> when
it has been assigned. Otherwise the content stored in <var>Value</var> is
used as the property value.
</p>
</descr>
<seealso>
<link id="TCalculatorDialog.Value"/>
<link id="#lcl.calcform.TCalculatorForm">TCalculatorForm</link>
</seealso>
</element>
<element name="TCalculatorDialog.Memory">
<short>
<var>Memory</var> - the value stored in the calculator's memory.
</short>
<descr>
<p>
<var>Memory</var> is a read-only <var>Double</var> property which contains
the numeric value stored using the Memory button on the calculator dialog.
The value in Memory is passed to the form in <var>DlgForm</var> in the
<var>Execute</var> method, and updated when the modal result for the
calculator form is <var>mrOk</var>.
</p>
</descr>
<seealso>
<link id="TCalculatorDialog.Execute"/>
<link id="#lcl.calcform.TCalculatorForm">TCalculatorForm</link>
</seealso>
</element>
<element name="TCalculatorDialog.BeepOnError">
<short>
<var>BeepOnError</var> - if <b>True</b>, beeps when there is an entry error
or other calculator error.
</short>
<descr>
<p>
<var>BeepOnError</var> is a <var>Boolean</var> property which indicates if a
beep occurs when an error occurs in the calculator dialog. The default value
for the property is <b>True</b>. The value in BeepOnError is assigned to the
corresponding property in <var>DlgForm</var> in the <var>Execute</var> method.
</p>
</descr>
<seealso>
<link id="TCalculatorDialog.Execute"/>
<link id="#lcl.calcform.TCalculatorForm">TCalculatorForm</link>
</seealso>
</element>
<element name="TCalculatorDialog.CalculatorLayout">
<short>
<var>CalculatorLayout</var> - whether simple or normal.
</short>
<descr>
<p>
<var>CalculatorLayout</var> is a <var>TCalculatorLayout</var> property which
specifies the layout used for the calculator dialog form in
<var>DlgForm</var>. CalculatorLayout is passed as an argument to the
<var>CreateCalculatorForm</var> routine in <var>Execute</var>, and determines
the size and position for the panels and buttons on the form.
</p>
<dl>
<dt>clNormal</dt>
<dd>Buttons and panels use a larger size with more whitespace</dd>
<dt>clSimple</dt>
<dd>Buttons and panels use a more compact size with less whitespace</dd>
</dl>
<p>
The default value for the property is <var>clNormal</var>.
</p>
</descr>
<seealso>
<link id="TCalculatorDialog.Execute"/>
<link id="#lcl.calcform.TCalculatorLayout">TCalculatorLayout</link>
<link id="#lcl.calcform.CreateCalculatorForm">CreateCalculatorForm</link>
</seealso>
</element>
<element name="TCalculatorDialog.Precision">
<short>
<var>Precision</var> - the level of precision to be used in calculations;
default is set by <var>DefCalcPrecision</var>.
</short>
<descr>
<p>
<var>Precision</var> is a <var>Byte</var> property which indicates the number
of precision digits used when formatting the display for the <var>Value</var>
property. Precision is assigned to the dialog form in <var>DlgForm</var>, and
passed as an argument when calling the <var>FloatToStrF</var> routine.
</p>
<p>
The default value for the property is determined by the
<var>CalcDefPrecision</var> constant.
</p>
</descr>
<seealso>
<link id="TCalculatorDialog.Value"/>
<link id="TCalculatorDialog.CalcDisplay"/>
<link id="#lcl.calcform.TCalculatorForm">TCalculatorForm</link>
<link id="#lcl.calcform.CalcDefPrecision">CalcDefPrecision</link>
<link id="#rtl.sysutils.FloatToStrF">FloatToStrF</link>
</seealso>
</element>
<element name="TCalculatorDialog.Title" link="#lcl.dialogs.TCommonDialog.Title"/>
<element name="TCalculatorDialog.Value">
<short>
<var>Value</var> - the numeric value (result) returned by the calculator.
</short>
<descr>
<p>
<var>Value</var> is a <var>Double</var> property which contains the numeric
value passed to and returned from the calculator dialog form. Value is
assigned to the <var>TCalculatorForm</var> instance in <var>DlgForm</var> in
the <var>Execute</var> method, and updated when the modal result for the form
is <var>mrOk</var>.
</p>
<p>
Value is used as the value for the <var>CalcDisplay</var> property when the
dialog form in DlgForm has not been assigned (contains <b>Nil</b>).
</p>
</descr>
<seealso>
<link id="TCalendarDialog.Execute"/>
<link id="#lcl.calcform.TCalculatorForm">TCalculatorForm</link>
</seealso>
</element>
<element name="TCalculatorDialog.OnCalcKey">
<short>
<var>OnCalcKey</var> - event handler for a key press in the calculator.
</short>
<descr>
<p>
<var>OnCalcKey</var> is a <var>TKeyPressEvent</var> property used as the
event handler for key press events in the calculator dialog form. OnCalcKey
is signalled from the <var>CalcKey</var> method which is assigned as the
<var>OnCalcKey</var> event handler in <var>DlgForm</var>.
</p>
<p>
Applications must implement an object procedure using the signature in
<var>TKeyPressEvent</var> to respond to the event notification.
</p>
</descr>
<seealso>
<link id="TCalculatorDialog.CalcKey"/>
<link id="#lcl.calcform.TCalculatorForm.OnCalcKey">TCalculatorForm.OnCalcKey</link>
<link id="#lcl.controls.TKeyPressEvent">TKeyPressEvent</link>
</seealso>
</element>
<element name="TCalculatorDialog.OnChange">
<short>
<var>OnChange</var> - event handler for any change in the calculator.
</short>
<descr>
<p>
<var>OnChange</var> is a <var>TNotifyEvent</var> property used as the event
handler signalled when the value for the calculator dialog is changed.
OnChange is signalled from the <var>Change</var> method when the calculator
dialog returns a modified value for the <var>Value</var> property.
</p>
<p>
Applications must implement an object procedure using the signature in
<var>TNotifyEvent</var> to respond to the event notification.
</p>
</descr>
<seealso>
<link id="TCalculatorDialog.Change"/>
<link id="TCalculatorDialog.Execute"/>
<link id="#lcl.calcform.TCalculatorForm">TCalculatorForm</link>
<link id="#rtl.classes.TNotifyEvent">TNotifyEvent</link>
</seealso>
</element>
<element name="TCalculatorDialog.OnDisplayChange">
<short>
<var>OnDisplayChange</var> - event handler for any change in the calculator
display.
</short>
<descr>
<var>OnDisplayChange</var> is a <var>TNotifyEvent</var> property used as the
event handler signalled when the display value for the calculator dialog is
changed. OnDisplayChange is signalled from the <var>DisplayChanged</var>
method which is assigned as the <var>OnDisplayChange</var> event handler in
<var>DlgForm</var>.
</descr>
<seealso>
<link id="TCalculatorDialog.Execute"/>
<link id="TCalculatorDialog.DisplayChange"/>
<link id="#lcl.calcform.TCalculatorForm.OnDisplayChange">TCalculatorForm.OnDisplayChange</link>
<link id="#rtl.classes.TNotifyEvent">TNotifyEvent</link>
</seealso>
</element>
<element name="TCalculatorDialog.DialogScale">
<short>
Scaling percentage applied to the calculator dialog form.
</short>
<descr>
<p>
<var>DialogScale</var> is an <var>Integer</var> property which indicates the
scaling percentage applied to the height and width for the calculator dialog.
When the value for the property is changed, it its validated and adjusted to
ensure that it is in the range <b>80...400</b> (the minimum and maximum
allowed for the property).
</p>
<p>
DialogScale is passed as the multiplier argument to the <var>ScaleBy</var>
method in <var>TCalculatorForm</var>; the divisor is always set to <b>100</b>.
</p>
<p>
The default value for the property is <b>100</b>, and indicates that the
dialog is displayed at <b>100%</b> of its designed size.
</p>
</descr>
<seealso>
<link id="TCalculatorDialog.Execute"/>
</seealso>
</element>
<element name="TCalculatorDialog.ColorBtnDigits">
<short>Color for the digit buttons displayed in the calculator dialog.</short>
<descr/>
<seealso/>
</element>
<element name="TCalculatorDialog.ColorBtnMemory">
<short>Color for the Memory button displayed in the calculator dialog.</short>
<descr/>
<seealso/>
</element>
<element name="TCalculatorDialog.ColorBtnOk">
<short>Color for the OK button displayed in the calculator dialog.</short>
<descr/>
<seealso/>
</element>
<element name="TCalculatorDialog.ColorBtnCancel">
<short>Color for the Cancel button displayed in the calculator dialog.</short>
<descr/>
<seealso/>
</element>
<element name="TCalculatorDialog.ColorBtnClear">
<short>Color for the Clear button displayed in the calculator dialog.</short>
<seealso/>
</element>
<element name="TCalculatorDialog.ColorBtnOthers">
<short>Color for other buttons displayed in the calculator dialog.</short>
<descr/>
<seealso/>
</element>
<element name="TCalculatorDialog.ColorDisplayText">
<short>Color for text displayed in the calculator dialog.</short>
<descr/>
<seealso/>
</element>
<element name="TCalculatorDialog.ColorDisplayBack">
<short>
Color for background in the display area for the calculator dialog.
</short>
<descr/>
<seealso/>
</element>
<element name="TCalendarDialog">
<short>
<var>TCalendarDialog</var> - a popup calendar dialog that allows a date to be
selected and returned to the main program.
</short>
<descr>
<p>
<var>TCalendarDialog</var> is a <var>TExtCommonDialog</var> descendant which
implements a calendar dialog used to select a date from a
<var>TCalendar</var> control. It provides a Date property that contains the
date used when selecting a date using the Calendar control displayed in the
dialog.
</p>
<p>
TCalendarDialog creates and configures a <var>TForm</var> instance that is
displayed in the <var>Execute</var> method for the dialog. The form uses the
<var>Title</var>, <var>DialogPosition</var>, <var>DisplaySettings</var>, and
<var>Date</var> properties assigned in the class. A new <var>TCalendar</var>
control is created for the form, and stored in the <var>Calendar</var>
property. Methods which implement the event handlers for the calendar control
are also assigned. The form instance is displayed modally, and the modal
result is captured in the <var>UserChoice</var> property. <var>Date</var> is
updated when a calendar date is selected while the form is active.
</p>
</descr>
<seealso>
<link id="TExtCommonDialog"/>
<link id="TCalendarDialog.Date"/>
<link id="TExtCommonDialog.DialogPosition"/>
<link id="TExtCommonDialog.DlgForm"/>
<link id="TCalendarDialog.Execute"/>
<link id="#lcl.calendar.TCalendar">TCalendar</link>
</seealso>
</element>
<element name="TCalendarDialog.FDate"/>
<element name="TCalendarDialog.FDayChanged"/>
<element name="TCalendarDialog.FDisplaySettings"/>
<element name="TCalendarDialog.FMonthChanged"/>
<element name="TCalendarDialog.FYearChanged"/>
<element name="TCalendarDialog.FOnChange"/>
<element name="TCalendarDialog.FOKCaption"/>
<element name="TCalendarDialog.FCancelCaption"/>
<element name="TCalendarDialog.FCalendar"/>
<element name="TCalendarDialog.FFirstDayOfWeek"/>
<element name="TCalendarDialog.okButton"/>
<element name="TCalendarDialog.cancelButton"/>
<element name="TCalendarDialog.panel"/>
<element name="TCalendarDialog.DialogClose">
<short>
Implements the event handler signalled when the dialog form is closed.
</short>
<descr>
<p>
<var>DialogClose</var> calls the DoClose method to signal the OnClose event
handler (when assigned).
</p>
<p>
DialogClose is assigned to the OnClose event handler for the dialog form
created in the Execute method.
</p>
<p>
See DialogCloseQuery for the handler routine used in the OnCloseQuery event
handler for the dialog form.
</p>
</descr>
<seealso>
<link id="TCalendarDialog.DoClose"/>
<link id="TCalendarDialog.OnClose"/>
<link id="TCalendarDialog.Execute"/>
<link id="#lcl.forms.TCustomForm.OnClose">TCustomForm.OnClose</link>
</seealso>
</element>
<element name="TCalendarDialog.DialogClose.Sender">
<short>
Object instance for the event notification. Not used in TCalendarDialog.
</short>
</element>
<element name="TCalendarDialog.DialogClose.CloseAction">
<short>
Action to perform when the dialog is closed. Not used in TCalendarDialog.
</short>
</element>
<element name="TCalendarDialog.DialogCloseQuery">
<short>
Implements the event handler signalled to determine if the dialog form can be
closed.
</short>
<descr>
<p>
<var>DialogCloseQuery</var> copies the value from the ModalResult property
to the UserChoice property in the dialog component.
</p>
<p>
The CanClose argument is a variable parameter which contains <b>True</b> if
the form can be closed. It is passed as an argument to the DoCanClose method
where the OnCanClose event handler is signalled (when assigned) to get its
return value. OnCanClose should set CanClose to <b>False</b> to prevent
closing the form.
</p>
<p>
DialogCloseQuery is assigned to the OnCloseQuery event handler for the
dialog form created in the Execute method.
</p>
<p>
See DialogClose for the actions performed when the form is actually closed.
</p>
</descr>
<seealso>
<link id="TCalendarDialog.DialogClose"/>
<link id="#lcl.dialogs.TCommonDialog.UserChoice">TCommonDialog.UserChoice</link>
<link id="#lcl.forms.TCustomForm.OnCloseQuery">TCustomForm.OnCloseQuery</link>
</seealso>
</element>
<element name="TCalendarDialog.DialogCloseQuery.Sender">
<short>
Object instance for the event notification. Not used in the method.
</short>
</element>
<element name="TCalendarDialog.DialogCloseQuery.CanClose">
<short>
Returns the value from the OnCanClose event handler.
</short>
</element>
<element name="TCalendarDialog.DialogShow">
<short>
Implements the event handler signalled when the dialog form is displayed.
</short>
<descr/>
<seealso></seealso>
</element>
<element name="TCalendarDialog.DialogShow.Sender">
<short>
Object instance (TForm) for the event notification.
</short>
</element>
<element name="TCalendarDialog.CalendarDayChanged">
<short>
Implements the event handler signalled when the day number in Date is changed.
</short>
<descr></descr>
<seealso></seealso>
</element>
<element name="TCalendarDialog.CalendarDayChanged.Sender">
<short>
Object instance (TForm) for the event notification.
</short>
</element>
<element name="TCalendarDialog.CalendarMonthChanged">
<short>
Implements the event handler signalled when the month in Date is changed.
</short>
<descr></descr>
<seealso></seealso>
</element>
<element name="TCalendarDialog.CalendarMonthChanged.Sender">
<short>
Object instance (TForm) for the event notification.
</short>
</element>
<element name="TCalendarDialog.CalendarYearChanged">
<short>
Implements the event handler signalled when the year in Date is changed.
</short>
<descr></descr>
<seealso></seealso>
</element>
<element name="TCalendarDialog.CalendarYearChanged.Sender">
<short>
Object instance (TForm) for the event notification.
</short>
</element>
<element name="TCalendarDialog.CalendarChange">
<short>
Event handler used to signal the OnChange event when the Calendar is updated.
</short>
<descr></descr>
<seealso></seealso>
</element>
<element name="TCalendarDialog.CalendarChange.Sender">
<short>
Object instance (TForm) for the event notification.
</short>
</element>
<!-- protected -->
<element name="TCalendarDialog.WSRegisterClass" link="#lcl.lclclasses.TLCLComponent.WSRegisterClass"/>
<element name="TCalendarDialog.GetNewDate">
<short>
Gets the date value from the Calendar on the dialog form.
</short>
<descr>
<p>
<var>GetNewDate</var> is a procedure used to get the date value from the
TCalendar control on the dialog form. It assigns the DateTime value from the
calendar control to the Date property in the dialog component.
</p>
<p>
GetNewDate is called from methods like CalendarDblClick,
CalendarDayChanged, CalendarYearChanged, and CalendarMonthChanged. It
is assigned as the OnClick event handler for the OK button displayed on the
calendar dialog form.
</p>
</descr>
<seealso></seealso>
</element>
<element name="TCalendarDialog.GetNewDate.Sender">
<short>
Object instance for the event notification. Not used in the method.
</short>
</element>
<element name="TCalendarDialog.CalendarDblClick">
<short>
Implements the event handler signalled for a double click on the calendar
control in the dialog.
</short>
<descr>
<p>
<var>CalendarDblClick</var> is the handler routine assigned to the OnDblClick
event in the TCalendar instance for the dialog form. It ensures that the
value in Date is updated when a mouse double click occurs on a date in the
TCalendar control on the dialog form. GetNewDate is called to update the
value in Date. The calendar dialog form is updated to set its ModalResult
value to mbOK.
</p>
</descr>
<seealso>
<link id="TCalendarDialog.Execute"/>
<link id="#lcl.calendar.TCalendar.OnDblClick">TCalendar.OnDblClick</link>
</seealso>
</element>
<element name="TCalendarDialog.CalendarDblClick.Sender">
<short>
Object instance (TForm) for the event notification.
</short>
</element>
<element name="TCalendarDialog.DefaultTitle">
<short>
Gets the default value for the Title property used as the Caption for the
calendar dialog form.
</short>
<descr>
<p>
The return value is set to the content in the rsPickDate resource string.
</p>
</descr>
<seealso></seealso>
</element>
<element name="TCalendarDialog.DefaultTitle.Result">
<short>Default value for the Title property.</short>
</element>
<!-- public -->
<element name="TCalendarDialog.Create">
<short>Constructor for the class instance.</short>
<descr>
<p>
<var>Create</var> is the overridden constructor for the
<var>TCalendarDialog</var> class. It calls the inherited method entry which
sets the value in DialogPosition to poMainFormCenter. Create sets the default
values for properties including:
</p>
<dl>
<dt>DisplaySettings</dt>
<dd>Set to the value in the DefaultDisplaySettings constant.</dd>
<dt>Date</dt>
<dd>Set to the date part of the value from the Now function.</dd>
<dt>OKCaption</dt>
<dd>Set to the value in the rsMbOK resource string.</dd>
<dt>CancelCaption</dt>
<dd>Set to the value in the rsMbCancel resource string.</dd>
</dl>
</descr>
<seealso/>
</element>
<element name="TCalendarDialog.Create.AOwner">
<short>Owner of the class instance.</short>
</element>
<element name="TCalendarDialog.Execute">
<short>
Creates and displays the form for the calendar dialog, and captures the
results.
</short>
<descr>
<p>
<var>Execute</var> is an overridden method in <var>TCalendarDialog</var>. It
creates and configures a new TForm instance displayed for the dialog
component. The dialog form includes controls needed to select a
date value, and to accept or reject the selected value. This includes:
</p>
<ul>
<li>TCalendar</li>
<li>TButton instances for the OK and Cancel buttons.</li>
</ul>
<p>
Values from properties in the class instance are used to configure the dialog
form, including:
</p>
<dl>
<dt>Title</dt>
<dd>
Used as the Caption for the dialog form.
</dd>
<dt>DialogPosition</dt>
<dd>
Sets the Position property in the form instance at run-time. At design-time,
the dialog is centered on the screen.
</dd>
<dt>DisplaySettings</dt>
<dd>
Sets the display settings used for the TCalendar instance on the dialog form.
</dd>
<dt>Date</dt>
<dd>
Sets the initial value for DateTime in the TCalendar instance on the dialog
form.
</dd>
</dl>
<p>
Methods in the class instance are assigned to the event handlers for the
dialog form and its controls, including:
</p>
<dl>
<dt>DialogShow</dt>
<dd>Assigned to the OnShow event handler in the dialog form.</dd>
<dt>DialogClose</dt>
<dd>Assigned to the OnClose event handler in the dialog form.</dd>
<dt>DialogCloseQuery</dt>
<dd>Assigned to the OnCloseQuery event handler in the dialog form.</dd>
<dt>CalendarDayChanged</dt>
<dd>
Assigned to the OnDayChanged event handler in the TCalendar instance on the
form.
</dd>
<dt>CalendarMonthChanged</dt>
<dd>
Assigned to the OnMonthChanged event handler in the TCalendar instance on the
form.
</dd>
<dt>CalendarYearChanged</dt>
<dd>
Assigned to the OnYearChanged event handler in the TCalendar instance on the
form.
</dd>
<dt>CalendarChange</dt>
<dd>
Assigned to the OnChange event handler in the TCalendar instance on the form.
</dd>
<dt>CalendarDblClick</dt>
<dd>
Assigned to the OnDblClick event handler in the TCalendar instance on the
form.
</dd>
</dl>
<p>
The ShowModal method for the dialog form is called to display the form and
capture the return value. The return value is <b>True</b> if the ModalResult
value is mrOK (when the OK button was clicked). The return value is
<b>False</b> if the Cancel button was clicked or the form was closed using
the window decoration.
</p>
<p>
The date selected using the calendar control is stored when the
CalendarChange routine is executed (via TCalendar.OnChange). This causes
the OnChange event handler in the class instance to be signalled to store the
updated value.
</p>
<p>
The form is freed prior to exiting from the method.
</p>
</descr>
<seealso>
<link id="#lcl.dialogs.TCommonDialog.Execute">TCommonDialog.Execute</link>
</seealso>
</element>
<element name="TCalendarDialog.Execute.Result">
<short>
<b>True</b> if the OK button was used to close the dialog form.
</short>
</element>
<element name="TCalendarDialog.Left">
<short>Contains the left coordinate for the dialog.</short>
<descr>
<p>
Used when Position contains poDesigned. Otherwise, it is updated after the form is dynamically created, aligned, and displayed.
</p>
</descr>
<seealso></seealso>
</element>
<element name="TCalendarDialog.Top">
<short>Contains the top coordinate for the dialog.</short>
<descr>
<p>
Used when Position contains poDesigned. Otherwise, it is updated after the form is dynamically created, aligned, and displayed.
</p>
</descr>
<seealso></seealso>
</element>
<element name="TCalendarDialog.Date">
<short>The selected Date for the calendar dialog.</short>
<descr>
<p>
<var>Date</var> is a <var>TDateTime</var> property which contains the date
displayed and updated using the form for the dialog. The initial value in
Date is set in the Create constructor to the date returned from the Now
function. The property is updated in the GetNewDate method when a new month,
day, or year is selected using the calendar control on the dialog form.
</p>
<p>
This is <b>not</b> the standard RTL Date function.
</p>
</descr>
<seealso/>
</element>
<element name="TCalendarDialog.DisplaySettings">
<short>
The user-specified settings determining the appearance of the calendar on the
dialog.
</short>
<descr>
<p>
<var>DisplaySettings</var> contains the user-specified settings which
determine the appearance for the calendar displayed in the dialog.
</p>
<p>
DisplaySettings is a set type which may contain zero or more settings.
Possible values include: ShowHeadings,ShowDayNames, NoMonthChange,
ShowWeekNumbers.
</p>
</descr>
<seealso/>
</element>
<element name="TCalendarDialog.FirstDayOfWeek">
<short>
Indicates the day of the week used in the first column for the calendar control
on the dialog.
</short>
<descr>
<p>
<var>FirstDayOfWeek</var> is a <var>TCalDayOfWeek</var> property which
indicates the first day of the week displayed on the calendar component used on
the dialog.
</p>
<p>
FirstDayOfWeek contains one of the values from the TCalDayOfWeek enumeration
like dowMonday, dowSunday, et. al. The default value for the property is
dowDefault and causes the default day of the week setting for the platform to
be used. Please note that this is not compatible with the dowLocaleDefault
value used in Delphi.
</p>
<p>
The value is assigned to the FirstDayOfWeek property in the internal TCalendar
instance when the Execute method is called. It configures the calendar
instance to display the selected day of the week as the first column for the
day grid used on the calendar control.
</p>
</descr>
<version>
Added in LCL 4.0.
</version>
<seealso>
<link id="TCalendarDialog.Execute"/>
<link id="#lcl.calendar.TCalendar.FirstDayOfWeek">TCalendar.FirstDayOfWeek</link>
<link id="#lcl.calendar.TCalDayOfWeek">TCalDayOfWeek</link>
</seealso>
</element>
<element name="TCalendarDialog.OKCaption">
<short>
Caption displayed on the OK button.
</short>
<descr>
<p>
<var>OKCaption</var> is a String property which contains the caption
displayed on the OK button in the dialog.
</p>
</descr>
<seealso></seealso>
</element>
<element name="TCalendarDialog.CancelCaption">
<short>
Caption displayed on the Cancel button for the calendar dialog form.
</short>
<descr>
<p>
<var>CancelCaption</var> is a String property which contains the caption
displayed on the Cancel button for the dialog.
</p>
</descr>
<seealso></seealso>
</element>
<element name="TCalendarDialog.OnDayChanged">
<short>
Event handler signalled when the day number in Date has been changed.
</short>
<descr/>
<seealso/>
</element>
<element name="TCalendarDialog.OnMonthChanged">
<short>
Event handler signalled when a month number in Date has been changed.
</short>
<descr>
<p>
<var>OnMonthChanged</var> is an event handler signalled when the value for
the Month in the Date is changed.
</p>
</descr>
<seealso/>
</element>
<element name="TCalendarDialog.OnYearChanged">
<short>
Event handler signalled when the year number in Date has been changed.
</short>
<descr/>
<seealso/>
</element>
<element name="TCalendarDialog.OnChange">
<short>
Event handler signalled when the value in Date has been changed.
</short>
<descr></descr>
<seealso></seealso>
</element>
<element name="Register">
<short>Registers components in the unit for use in the Lazarus IDE.</short>
<descr>
<p>
<var>Register</var> is a procedure used to register components in the
<file>extdlgs.pas</file> unit for use in the Lazarus IDE. Register adds the
<var>TOpenPictureDialog</var>, <var>TSavePictureDialog</var>,
<var>TCalendarDialog</var>, and <var>TCalculatorDialog</var> components to
the <b>'Dialogs'</b> tab in the Lazarus IDE.
</p>
</descr>
<seealso/>
</element>
</module>
<!-- ExtDlgs -->
</package>
</fpdoc-descriptions>