<?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
file://../../cc-by-sa-4-0.txt

Copyright (c) 1997-2023, by the Lazarus Development Team.

-->
<fpdoc-descriptions>
<package name="lcl">
<!--
====================================================================
GroupedEdit
====================================================================
-->
<module name="GroupedEdit">
<short>Provides the base class for grouped edit controls.</short>
<descr>
<p>
<file>groupededit.pp</file> provides a base class where a 
<var>TCustomMaskEdit</var> (derived) control is grouped inside a 
<var>TCustomControl</var> with another <var>TControl</var> derived class. The 
objective of this base class is to forward all relevant methods and 
properties of TCustomMaskEdit. Grouping the controls inside a TCustomControl 
is done, so that the resulting control can be aligned and anchored.
</p>
<p>
Initial implementation: 2016 by Bart Broersma
</p>
</descr>

<!-- unresolved external references -->
<element name="Classes"/>
<element name="SysUtils"/>
<element name="LCLProc"/>
<element name="LResources"/>
<element name="LCLStrConsts"/>
<element name="Types"/>
<element name="LCLType"/>
<element name="LMessages"/>
<element name="Graphics"/>
<element name="Controls"/>
<element name="Forms"/>
<element name="LazFileUtils"/>
<element name="Dialogs"/>
<element name="StdCtrls"/>
<element name="Buttons"/>
<element name="Menus"/>
<element name="MaskEdit"/>

<element name="TGEEdit">
<short>Implements the edit control used in TCustomAbstractGroupedEdit.</short>
<descr>
<p>
<var>TGEEdit</var> is a <var>TCustomMaskedit</var> descendant which 
implements the edit control used in <var>TCustomAbstractGroupedEdit</var>. 
TGEEdit provides an overridden method to handle <b>Tab</b> keys. The key can 
be forwarded to the control that owns the class instance, to the ancestor 
class, or simply discarded.
</p>
<p>
TGEEdit is the type used to implement the <var>BaseEditor</var> property in 
<var>TCustomAbstractGroupedEdit</var>.
</p>
</descr>
<seealso>
<link id="TGEEdit.PerformTab"/>
<link id="TCustomAbstractGroupedEdit.BaseEditor"/>
<link id="#lcl.controls.TWinControl.PerformTab">TWinControl.PerformTab</link>
</seealso>
</element>

<element name="TGEEdit.PerformTab">
<short>Handles Tab key presses for the control.</short>
<descr/>
<seealso/>
</element>
<element name="TGEEdit.PerformTab.Result">
<short><b>True</b> when the Tab key has been handled.</short>
</element>
<element name="TGEEdit.PerformTab.ForwardTab">
<short><b>True</b> forwards the key to the ancestor class.</short>
</element>

<element name="TGEEditClass">
<short>Class type used to create instances of TGEEdit.</short>
<descr/>
<seealso/>
</element>

<element name="TCustomAbstractGroupedEdit">
<short>Implements a grouped edit control.</short>
<descr>
<p>
<var>TCustomAbstractGroupedEdit</var> is a <var>TCustomControl</var> 
descendant which implements a grouped edit control. 
TCustomAbstractGroupedEdit is composed of a TGEEdit control that provides an 
editor for the control value, and a related TControl descendant.
</p>
<p>
TCustomAbstractGroupedEdit basically acts as a container for the grouped 
controls, and ensures that Alignment and Anchoring are performed. 
TCustomAbstractGroupedEdit forwards relevant methods and properties to the 
<var>BaseEditor</var> or <var>Buddy</var> members, and receives event 
notifications from both.
</p>
<p>
Derived classes should implement their own BaseEditor and Buddy properties so 
that they will have the correct class types.
</p>
</descr>
<seealso>
<link id="TCustomAbstractGroupedEdit.BaseEditor"/>
<link id="TCustomAbstractGroupedEdit.Buddy"/>
<link id="TGEEdit"/>
<link id="#lcl.controls.TCustomControl">TCustomControl</link>
<link id="#lcl.controls.TControl">TControl</link>
</seealso>
</element>

<!-- private -->
<element name="TCustomAbstractGroupedEdit.FAutoSizeHeightIsEditHeight"/>
<element name="TCustomAbstractGroupedEdit.FBuddy"/>
<element name="TCustomAbstractGroupedEdit.FDirectInput"/>
<element name="TCustomAbstractGroupedEdit.FEdit"/>
<element name="TCustomAbstractGroupedEdit.FFocusOnBuddyClick"/>
<element name="TCustomAbstractGroupedEdit.FInitialColor"/>
<element name="TCustomAbstractGroupedEdit.FIsReadOnly"/>
<element name="TCustomAbstractGroupedEdit.FLayout"/>
<element name="TCustomAbstractGroupedEdit.FSpacing"/>
<element name="TCustomAbstractGroupedEdit.FTextHintFontColor"/>
<element name="TCustomAbstractGroupedEdit.FTextHintFontStyle"/>
<element name="TCustomAbstractGroupedEdit.FOnBuddyClick"/>
<element name="TCustomAbstractGroupedEdit.FOnEditClick"/>
<element name="TCustomAbstractGroupedEdit.FOnEditChange"/>
<element name="TCustomAbstractGroupedEdit.FOnEditContextPopup"/>
<element name="TCustomAbstractGroupedEdit.FOnEditDblClick"/>
<element name="TCustomAbstractGroupedEdit.FOnEditDragDrop"/>
<element name="TCustomAbstractGroupedEdit.FOnEditDragOver"/>
<element name="TCustomAbstractGroupedEdit.FOnEditEditingDone"/>
<element name="TCustomAbstractGroupedEdit.FOnEditEndDrag"/>
<element name="TCustomAbstractGroupedEdit.FOnEditExit"/>
<element name="TCustomAbstractGroupedEdit.FOnEditKeyDown"/>
<element name="TCustomAbstractGroupedEdit.FOnEditKeyPress"/>
<element name="TCustomAbstractGroupedEdit.FOnEditEnter"/>
<element name="TCustomAbstractGroupedEdit.FOnEditKeyUp"/>
<element name="TCustomAbstractGroupedEdit.FOnEditMouseDown"/>
<element name="TCustomAbstractGroupedEdit.FOnEditMouseUp"/>
<element name="TCustomAbstractGroupedEdit.FOnEditMouseEnter"/>
<element name="TCustomAbstractGroupedEdit.FOnEditMouseLeave"/>
<element name="TCustomAbstractGroupedEdit.FOnEditMouseMove"/>
<element name="TCustomAbstractGroupedEdit.FOnEditMouseWheel"/>
<element name="TCustomAbstractGroupedEdit.FOnEditMouseWheelUp"/>
<element name="TCustomAbstractGroupedEdit.FOnEditMouseWheelDown"/>
<element name="TCustomAbstractGroupedEdit.FOnEditStartDrag"/>
<element name="TCustomAbstractGroupedEdit.FOnEditUtf8KeyPress"/>

<element name="TCustomAbstractGroupedEdit.GetAlignment">
<short>Gets the value for the Alignment property.</short>
<descr/>
<seealso>
<link id="TCustomAbstractGroupedEdit.Alignment"/>
</seealso>
</element>
<element name="TCustomAbstractGroupedEdit.GetAlignment.Result">
<short>Value for the property.</short>
</element>

<element name="TCustomAbstractGroupedEdit.GetAutoSelect">
<short>Gets the value for the AutoSelect property.</short>
<descr/>
<seealso>
<link id="TCustomAbstractGroupedEdit.AutoSelect"/>
</seealso>
</element>
<element name="TCustomAbstractGroupedEdit.GetAutoSelect.Result">
<short>Value for the property.</short>
</element>

<element name="TCustomAbstractGroupedEdit.GetAutoSelected">
<short>Gets the value for the AutoSelected property.</short>
<descr/>
<seealso>
<link id="TCustomAbstractGroupedEdit.AutoSelected"/>
</seealso>
</element>
<element name="TCustomAbstractGroupedEdit.GetAutoSelected.Result">
<short>Value for the property.</short>
</element>

<element name="TCustomAbstractGroupedEdit.GetCanUndo">
<short>Gets the value for the CanUndo property.</short>
<descr/>
<seealso>
<link id="TCustomAbstractGroupedEdit.CanUndo"/>
</seealso>
</element>
<element name="TCustomAbstractGroupedEdit.GetCanUndo.Result">
<short>Value for the property.</short>
</element>

<element name="TCustomAbstractGroupedEdit.GetCaretPos">
<short>Gets the value for the CaretPos property.</short>
<descr/>
<seealso>
<link id="TCustomAbstractGroupedEdit.CaretPos"/>
</seealso>
</element>
<element name="TCustomAbstractGroupedEdit.GetCaretPos.Result">
<short>Value for the property.</short>
</element>

<element name="TCustomAbstractGroupedEdit.GetCharCase">
<short>Gets the value for the CharCase property.</short>
<descr/>
<seealso>
<link id="TCustomAbstractGroupedEdit.CharCase"/>
</seealso>
</element>
<element name="TCustomAbstractGroupedEdit.GetCharCase.Result">
<short>Value for the property.</short>
</element>

<element name="TCustomAbstractGroupedEdit.GetColor">
<short>Gets the value for the Color property.</short>
<descr/>
<seealso>
<link id="TCustomAbstractGroupedEdit.Color"/>
</seealso>
</element>
<element name="TCustomAbstractGroupedEdit.GetColor.Result">
<short>Value for the property.</short>
</element>

<element name="TCustomAbstractGroupedEdit.GetDirectInput">
<short>Gets the value for the DirectInput property.</short>
<descr/>
<seealso>
<link id="TCustomAbstractGroupedEdit.DirectInput"/>
</seealso>
</element>
<element name="TCustomAbstractGroupedEdit.GetDirectInput.Result">
<short>Value for the property.</short>
</element>

<element name="TCustomAbstractGroupedEdit.GetEchoMode">
<short>Gets the value for the EchoMode property.</short>
<descr/>
<seealso>
<link id="TCustomAbstractGroupedEdit.EchoMode"/>
</seealso>
<seealso/>
</element>
<element name="TCustomAbstractGroupedEdit.GetEchoMode.Result">
<short>Value for the property.</short>
</element>

<element name="TCustomAbstractGroupedEdit.GetEditMask">
<short>Gets the value for the EditMask property.</short>
<descr/>
<seealso>
<link id="TCustomAbstractGroupedEdit.EditMask"/>
</seealso>
</element>
<element name="TCustomAbstractGroupedEdit.GetEditMask.Result">
<short>Value for the property.</short>
</element>

<element name="TCustomAbstractGroupedEdit.GetEditText">
<short>Gets the value for the EditText property.</short>
<descr/>
<seealso>
<link id="TCustomAbstractGroupedEdit.EditText"/>
</seealso>
</element>
<element name="TCustomAbstractGroupedEdit.GetEditText.Result">
<short>Value for the property.</short>
</element>

<element name="TCustomAbstractGroupedEdit.GetHideSelection">
<short>Gets the value for the HideSelection property.</short>
<descr/>
<seealso>
<link id="TCustomAbstractGroupedEdit.HideSelection"/>
</seealso>
</element>
<element name="TCustomAbstractGroupedEdit.GetHideSelection.Result">
<short>Value for the property.</short>
</element>

<element name="TCustomAbstractGroupedEdit.GetIsMasked">
<short>Gets the value for the IsMasked property.</short>
<descr/>
<seealso>
<link id="TCustomAbstractGroupedEdit.IsMasked"/>
</seealso>
</element>
<element name="TCustomAbstractGroupedEdit.GetIsMasked.Result">
<short>Value for the property.</short>
</element>

<element name="TCustomAbstractGroupedEdit.GetMaxLength">
<short>Gets the value for the MaxLength property.</short>
<descr/>
<seealso>
<link id="TCustomAbstractGroupedEdit.MaxLength"/>
</seealso>
</element>
<element name="TCustomAbstractGroupedEdit.GetMaxLength.Result">
<short>Value for the property.</short>
</element>

<element name="TCustomAbstractGroupedEdit.GetModified">
<short>Gets the value for the Modified property.</short>
<descr/>
<seealso>
<link id="TCustomAbstractGroupedEdit.Modified"/>
</seealso>
</element>
<element name="TCustomAbstractGroupedEdit.GetModified.Result">
<short>Value for the property.</short>
</element>

<element name="TCustomAbstractGroupedEdit.GetNumbersOnly">
<short>Gets the value for the NumbersOnly property.</short>
<descr/>
<seealso>
<link id="TCustomAbstractGroupedEdit.NumbersOnly"/>
</seealso>
</element>
<element name="TCustomAbstractGroupedEdit.GetNumbersOnly.Result">
<short>Value for the property.</short>
</element>

<element name="TCustomAbstractGroupedEdit.GetParentColor">
<short>Gets the value for the ParentColor property.</short>
<descr/>
<seealso>
<link id="TCustomAbstractGroupedEdit.ParentColor"/>
</seealso>
</element>
<element name="TCustomAbstractGroupedEdit.GetParentColor.Result">
<short>Value for the property.</short>
</element>

<element name="TCustomAbstractGroupedEdit.GetPasswordChar">
<short>Gets the value for the PasswordChar property.</short>
<descr>
Read access for the the value is redirected to the PasswordChar property in 
BaseEditor.
</descr>
<seealso>
<link id="TCustomAbstractGroupedEdit.BaseEditor"/>
<link id="TCustomMaskEdit.PasswordChar"/>
</seealso>
</element>
<element name="TCustomAbstractGroupedEdit.GetPasswordChar.Result">
<short>Value for the property.</short>
</element>

<element name="TCustomAbstractGroupedEdit.GetReadOnly">
<short>Gets the value for the ReadOnly property.</short>
<descr/>
<seealso>
<link id="TCustomAbstractGroupedEdit.ReadOnly"/>
</seealso>
</element>
<element name="TCustomAbstractGroupedEdit.GetReadOnly.Result">
<short>Value for the property.</short>
</element>

<element name="TCustomAbstractGroupedEdit.GetSelLength">
<short>Gets the value for the SelLength property.</short>
<descr>
Read access to the property value is redirected to BaseEditor.
</descr>
<seealso>
<link id="TCustomAbstractGroupedEdit.SelLength"/>
</seealso>
</element>
<element name="TCustomAbstractGroupedEdit.GetSelLength.Result">
<short>Value for the property.</short>
</element>

<element name="TCustomAbstractGroupedEdit.GetSelStart">
<short>Gets the value for the SelStart property.</short>
<descr>
Read access to the property value is redirected to BaseEditor.
</descr>
<seealso>
<link id="TCustomAbstractGroupedEdit.SelStart"/>
</seealso>
</element>
<element name="TCustomAbstractGroupedEdit.GetSelStart.Result">
<short>Value for the property.</short>
</element>

<element name="TCustomAbstractGroupedEdit.GetSelText">
<short>Gets the value for the SelText property.</short>
<descr>
Read access to the property value is redirected to BaseEditor.
</descr>
<seealso>
<link id="TCustomAbstractGroupedEdit.SelText"/>
</seealso>
</element>
<element name="TCustomAbstractGroupedEdit.GetSelText.Result">
<short>Value for the property.</short>
</element>

<element name="TCustomAbstractGroupedEdit.GetTabStop">
<short>Gets the value for the TabStop property.</short>
<descr>
Read access to the property value is redirected to BaseEditor.
</descr>
<seealso>
<link id="TCustomAbstractGroupedEdit.TabStop"/>
</seealso>
</element>
<element name="TCustomAbstractGroupedEdit.GetTabStop.Result">
<short>Value for the property.</short>
</element>

<element name="TCustomAbstractGroupedEdit.GetTextHint">
<short>Gets the value for the TextHint property.</short>
<descr>
Read access to the property value is redirected to BaseEditor.
</descr>
<seealso>
<link id="TCustomAbstractGroupedEdit.TextHint"/>
</seealso>
</element>
<element name="TCustomAbstractGroupedEdit.GetTextHint.Result">
<short>Value for the property.</short>
</element>

<element name="TCustomAbstractGroupedEdit.InternalOnBuddyClick">
<short>Executes the click event handler for the Buddy control.</short>
<descr/>
<seealso/>
</element>
<element name="TCustomAbstractGroupedEdit.InternalOnBuddyClick.Sender">
<short>Object instance for the event notification.</short>
</element>

<element name="TCustomAbstractGroupedEdit.InternalOnEditClick">
<short>Executes the click event handler for the BaseEditor control.</short>
<descr/>
<seealso/>
</element>
<element name="TCustomAbstractGroupedEdit.InternalOnEditClick.Sender">
<short>Object instance for the event notification.</short>
</element>

<element name="TCustomAbstractGroupedEdit.InternalOnEditDblClick">
<short>
Executes the double click event handler for the BaseEditor control.
</short>
<descr/>
<seealso/>
</element>
<element name="TCustomAbstractGroupedEdit.InternalOnEditDblClick.Sender">
<short>Object instance for the event notification.</short>
</element>

<element name="TCustomAbstractGroupedEdit.InternalOnEditChange">
<short>Executes the OnChange event handler for the BaseEditor control.</short>
<descr/>
<seealso/>
</element>
<element name="TCustomAbstractGroupedEdit.InternalOnEditChange.Sender">
<short>Object instance for the event notification.</short>
</element>

<element name="TCustomAbstractGroupedEdit.InternalOnEditContextPopup">
<short>Executes the OnEditContextPopup handler for the control.</short>
<descr/>
<seealso/>
</element>
<element name="TCustomAbstractGroupedEdit.InternalOnEditContextPopup.Sender">
<short>
Object instance for the event.
</short>
</element>
<element name="TCustomAbstractGroupedEdit.InternalOnEditContextPopup.MousePos">
<short>
TPoint instance with the coordinates for the mouse pointer when the event 
occurred.
</short>
</element>
<element name="TCustomAbstractGroupedEdit.InternalOnEditContextPopup.Handled">
<short>
Returns <b>True</b> if the context menu was handled in the handler routine.
</short>
</element>

<element name="TCustomAbstractGroupedEdit.InternalOnEditDragDrop">
<short>Executes the OnEditDragDrop event handler for the control.</short>
<descr/>
<seealso>
<link id="TCustomAbstractGroupedEdit.BaseEditor"/>
<link id="TCustomAbstractGroupedEdit.OnEditDragDrop"/>
<link id="TCustomAbstractGroupedEdit.EditDragDrop"/>
</seealso>
</element>
<element name="TCustomAbstractGroupedEdit.InternalOnEditDragDrop.Sender">
<short>Object instance for the event notification.</short>
</element>
<element name="TCustomAbstractGroupedEdit.InternalOnEditDragDrop.Source">
<short>
Object instance which was dropped onto the composite control.
</short>
</element>
<element name="TCustomAbstractGroupedEdit.InternalOnEditDragDrop.X">
<short>
Horizontal coordinate for the mouse pointer when it was released to drop the 
dragged object.
</short>
</element>
<element name="TCustomAbstractGroupedEdit.InternalOnEditDragDrop.Y">
<short>
Vertical coordinate for the mouse pointer when it was released to drop the 
dragged object.
</short>
</element>

<element name="TCustomAbstractGroupedEdit.InternalOnEditDragOver">
<short>Executes the OnEditDragOver event handler for the control.</short>
<descr/>
<seealso>
<link id="TCustomAbstractGroupedEdit.EditDragOver"/>
<link id="#lcl.controls.TDragState">TDragState</link>
</seealso>
</element>
<element name="TCustomAbstractGroupedEdit.InternalOnEditDragOver.Sender">
<short>Object instance for the event notification.</short>
</element>
<element name="TCustomAbstractGroupedEdit.InternalOnEditDragOver.Source">
<short>
Object instance which was dragged over the control.
</short>
</element>
<element name="TCustomAbstractGroupedEdit.InternalOnEditDragOver.X">
<short>
Horizontal position for the mouse pointer when the dragged object entered or 
left the control.
</short>
</element>
<element name="TCustomAbstractGroupedEdit.InternalOnEditDragOver.Y">
<short>
Vertical position for the mouse pointer when the dragged object entered, left, 
or was moved over the control.
</short>
</element>
<element name="TCustomAbstractGroupedEdit.InternalOnEditDragOver.State">
<short>
Indicates whether the dragged object entered, left, or changed position on the 
control.
</short>
</element>
<element name="TCustomAbstractGroupedEdit.InternalOnEditDragOver.Accept">
<short>
Returns <b>True</b> when the drag over event is valid for the control.
</short>
</element>

<element name="TCustomAbstractGroupedEdit.InternalOnEditEditingDone">
<short>Executes the OnEditingDone event handler for the control.</short>
<descr/>
<seealso/>
</element>
<element name="TCustomAbstractGroupedEdit.InternalOnEditEditingDone.Sender">
<short>Object instance for the event notification.</short>
</element>

<element name="TCustomAbstractGroupedEdit.InternalOnEditEnter">
<short>Executes the OnEditEnter event handler for the control.</short>
<descr/>
<seealso/>
</element>
<element name="TCustomAbstractGroupedEdit.InternalOnEditEnter.Sender">
<short>Object instance for the event notification.</short>
</element>

<element name="TCustomAbstractGroupedEdit.InternalOnEditExit">
<short>Executes the OnEditExit event handler for the control.</short>
<descr/>
<seealso/>
</element>
<element name="TCustomAbstractGroupedEdit.InternalOnEditExit.Sender">
<short>Object instance for the event notification.</short>
</element>

<element name="TCustomAbstractGroupedEdit.InternalOnEditEndDrag">
<short>Executes the OnEditEndDrag event handler for the control.</short>
<descr/>
<seealso/>
</element>
<element name="TCustomAbstractGroupedEdit.InternalOnEditEndDrag.Sender">
<short>Object instance for the event notification.</short>
</element>
<element name="TCustomAbstractGroupedEdit.InternalOnEditEndDrag.Target"/>
<element name="TCustomAbstractGroupedEdit.InternalOnEditEndDrag.X"/>
<element name="TCustomAbstractGroupedEdit.InternalOnEditEndDrag.Y"/>

<element name="TCustomAbstractGroupedEdit.InternalOnEditKeyDown">
<short>Executes the OnEditKeyDown event handler for the control.</short>
<descr/>
<seealso/>
</element>
<element name="TCustomAbstractGroupedEdit.InternalOnEditKeyDown.Sender">
<short>Object instance for the event notification.</short>
</element>
<element name="TCustomAbstractGroupedEdit.InternalOnEditKeyDown.Key"/>
<element name="TCustomAbstractGroupedEdit.InternalOnEditKeyDown.Shift"/>

<element name="TCustomAbstractGroupedEdit.InternalOnEditKeyPress">
<short>Executes the OnEditKeyPress event handler for the control.</short>
<descr/>
<seealso/>
</element>
<element name="TCustomAbstractGroupedEdit.InternalOnEditKeyPress.Sender">
<short>Object instance for the event notification.</short>
</element>
<element name="TCustomAbstractGroupedEdit.InternalOnEditKeyPress.Key"/>

<element name="TCustomAbstractGroupedEdit.InternalOnEditKeyUp">
<short>Executes the OnEditKeyUp event handler for the control.</short>
<descr/>
<seealso/>
</element>
<element name="TCustomAbstractGroupedEdit.InternalOnEditKeyUp.Sender">
<short>Object instance for the event notification.</short>
</element>
<element name="TCustomAbstractGroupedEdit.InternalOnEditKeyUp.Key"/>
<element name="TCustomAbstractGroupedEdit.InternalOnEditKeyUp.Shift"/>

<element name="TCustomAbstractGroupedEdit.InternalOnEditMouseDown">
<short>Executes the OnEditMouseDown event handler for the control.</short>
<descr/>
<seealso/>
</element>
<element name="TCustomAbstractGroupedEdit.InternalOnEditMouseDown.Sender">
<short>Object instance for the event notification.</short>
</element>
<element name="TCustomAbstractGroupedEdit.InternalOnEditMouseDown.Button"/>
<element name="TCustomAbstractGroupedEdit.InternalOnEditMouseDown.Shift"/>
<element name="TCustomAbstractGroupedEdit.InternalOnEditMouseDown.X"/>
<element name="TCustomAbstractGroupedEdit.InternalOnEditMouseDown.Y"/>

<element name="TCustomAbstractGroupedEdit.InternalOnEditMouseUp">
<short>Executes the OnEditMouseUp event handler for the control.</short>
<descr/>
<seealso/>
</element>
<element name="TCustomAbstractGroupedEdit.InternalOnEditMouseUp.Sender">
<short>Object instance for the event notification.</short>
</element>
<element name="TCustomAbstractGroupedEdit.InternalOnEditMouseUp.Button"/>
<element name="TCustomAbstractGroupedEdit.InternalOnEditMouseUp.Shift"/>
<element name="TCustomAbstractGroupedEdit.InternalOnEditMouseUp.X"/>
<element name="TCustomAbstractGroupedEdit.InternalOnEditMouseUp.Y"/>


<element name="TCustomAbstractGroupedEdit.InternalOnEditMouseEnter"/>
<element name="TCustomAbstractGroupedEdit.InternalOnEditMouseEnter.Sender"/>
<element name="TCustomAbstractGroupedEdit.InternalOnEditMouseLeave"/>
<element name="TCustomAbstractGroupedEdit.InternalOnEditMouseLeave.Sender"/>
<element name="TCustomAbstractGroupedEdit.InternalOnEditMouseMove"/>
<element name="TCustomAbstractGroupedEdit.InternalOnEditMouseMove.Sender"/>
<element name="TCustomAbstractGroupedEdit.InternalOnEditMouseMove.Shift"/>
<element name="TCustomAbstractGroupedEdit.InternalOnEditMouseMove.X"/>
<element name="TCustomAbstractGroupedEdit.InternalOnEditMouseMove.Y"/>
<element name="TCustomAbstractGroupedEdit.InternalOnEditMouseWheel"/>
<element name="TCustomAbstractGroupedEdit.InternalOnEditMouseWheel.Sender"/>
<element name="TCustomAbstractGroupedEdit.InternalOnEditMouseWheel.Shift"/>
<element name="TCustomAbstractGroupedEdit.InternalOnEditMouseWheel.WheelDelta"/>
<element name="TCustomAbstractGroupedEdit.InternalOnEditMouseWheel.MousePos"/>
<element name="TCustomAbstractGroupedEdit.InternalOnEditMouseWheel.Handled"/>
<element name="TCustomAbstractGroupedEdit.InternalOnEditMouseWheelUp"/>
<element name="TCustomAbstractGroupedEdit.InternalOnEditMouseWheelUp.Sender"/>
<element name="TCustomAbstractGroupedEdit.InternalOnEditMouseWheelUp.Shift"/>
<element name="TCustomAbstractGroupedEdit.InternalOnEditMouseWheelUp.MousePos"/>
<element name="TCustomAbstractGroupedEdit.InternalOnEditMouseWheelUp.Handled"/>
<element name="TCustomAbstractGroupedEdit.InternalOnEditMouseWheelDown"/>
<element name="TCustomAbstractGroupedEdit.InternalOnEditMouseWheelDown.Sender"/>
<element name="TCustomAbstractGroupedEdit.InternalOnEditMouseWheelDown.Shift"/>
<element name="TCustomAbstractGroupedEdit.InternalOnEditMouseWheelDown.MousePos"/>
<element name="TCustomAbstractGroupedEdit.InternalOnEditMouseWheelDown.Handled"/>
<element name="TCustomAbstractGroupedEdit.InternalOnEditUtf8KeyPress"/>
<element name="TCustomAbstractGroupedEdit.InternalOnEditUtf8KeyPress.Sender"/>
<element name="TCustomAbstractGroupedEdit.InternalOnEditUtf8KeyPress.UTF8Key"/>
<element name="TCustomAbstractGroupedEdit.InternalOnEditStartDrag"/>
<element name="TCustomAbstractGroupedEdit.InternalOnEditStartDrag.Sender"/>
<element name="TCustomAbstractGroupedEdit.InternalOnEditStartDrag.DragObject"/>

<element name="TCustomAbstractGroupedEdit.SetAlignment">
<short>Sets the value for the Alignment property.</short>
<descr>
Write access for the property value is redirected to the <var>Alignment</var> 
property in <var>BaseEditor</var>.
</descr>
<seealso>
<link id="TCustomAbstractGroupedEdit.BaseEditor"/>
<link id="#lcl.stdctrls.TCustomEdit.Alignment">TCustomEdit.Alignment</link>
</seealso>
</element>
<element name="TCustomAbstractGroupedEdit.SetAlignment.AValue">
<short>New value for the property.</short>
</element>

<element name="TCustomAbstractGroupedEdit.SetAutoSelect">
<short>Sets the value for the AutoSelect property.</short>
<descr>
Write access for the property value is redirected to <var>BaseEditor</var>.
</descr>
<seealso>
<link id="TCustomAbstractGroupedEdit.BaseEditor"/>
<link id="#lcl.stdctrls.TCustomEdit.AutoSelect">TCustomEdit.AutoSelect</link>
</seealso>
</element>
<element name="TCustomAbstractGroupedEdit.SetAutoSelect.AValue">
<short>New value for the property.</short>
</element>

<element name="TCustomAbstractGroupedEdit.SetAutoSelected">
<short>Sets the value for the AutoSelected property.</short>
<descr>
Write access to the property value is redirected to <var>BaseEditor</var>.
</descr>
<seealso>
<link id="TCustomAbstractGroupedEdit.AutoSelect"/>
<link id="TCustomAbstractGroupedEdit.BaseEditor"/>
<link id="TCustomMaskEdit.AutoSelect"/>
</seealso>
</element>
<element name="TCustomAbstractGroupedEdit.SetAutoSelected.AValue">
<short>New value for the property.</short>
</element>

<element name="TCustomAbstractGroupedEdit.SetCaretPos">
<short>Sets the value for the CaretPos property.</short>
<descr>
Write access to the property value is redirected to <var>BaseEditor</var>.
</descr>
<seealso>
<link id="TCustomAbstractGroupedEdit.CaretPos"/>
<link id="TCustomAbstractGroupedEdit.BaseEditor"/>
<link id="TCustomMaskEdit.CaretPos"/>
</seealso>
</element>
<element name="TCustomAbstractGroupedEdit.SetCaretPos.AValue">
<short>New value for the property.</short>
</element>

<element name="TCustomAbstractGroupedEdit.SetCharCase">
<short>Sets the value for the CharCase property.</short>
<descr>
<p>
Write access to the property value is redirected to <var>BaseEditor</var>.
</p>
</descr>
<seealso>
<link id="TCustomAbstractGroupedEdit.CharCase"/>
<link id="TCustomAbstractGroupedEdit.BaseEditor"/>
<link id="TCustomMaskEdit.CharCase"/>
</seealso>
</element>
<element name="TCustomAbstractGroupedEdit.SetCharCase.AValue">
<short>New value for the property.</short>
</element>

<element name="TCustomAbstractGroupedEdit.SetEchoMode">
<short>Sets the value for the EchoMode property.</short>
<descr>
Write access to the property value is redirected to <var>BaseEditor</var>.
</descr>
<seealso>
<link id="TCustomAbstractGroupedEdit.EchoMode"/>
<link id="TCustomAbstractGroupedEdit.BaseEditor"/>
<link id="TCustomMaskEdit.EchoMode"/>
</seealso>
</element>
<element name="TCustomAbstractGroupedEdit.SetEchoMode.AValue">
<short>New value for the property.</short>
</element>

<element name="TCustomAbstractGroupedEdit.SetEditMask">
<short>Sets the value for the EditMask property.</short>
<descr>
Write access to the property value is redirected to <var>BaseEditor</var>.
</descr>
<seealso>
<link id="TCustomAbstractGroupedEdit.EditMask"/>
<link id="TCustomAbstractGroupedEdit.BaseEditor"/>
<link id="TCustomMaskEdit.EditMask"/>
</seealso>
</element>
<element name="TCustomAbstractGroupedEdit.SetEditMask.AValue">
<short>New value for the property.</short>
</element>

<element name="TCustomAbstractGroupedEdit.SetEditText">
<short>Sets the value for the EditText property.</short>
<descr>
Write access to the property value is redirected to <var>BaseEditor</var>.
</descr>
<seealso>
<link id="TCustomAbstractGroupedEdit.EditText"/>
<link id="TCustomAbstractGroupedEdit.BaseEditor"/>
<link id="TCustomMaskEdit.EditText"/>
</seealso>
</element>
<element name="TCustomAbstractGroupedEdit.SetEditText.AValue">
<short>New value for the property.</short>
</element>

<element name="TCustomAbstractGroupedEdit.SetHideSelection">
<short>Sets the value for the HideSelection property.</short>
<descr>
<p>
Read and write access for the property value is redirected to 
<var>BaseEditor</var>.
</p>
</descr>
<seealso>
<link id="TCustomAbstractGroupedEdit.HideSelection"/>
<link id="TCustomAbstractGroupedEdit.BaseEditor"/>
<link id="#lcl.stdctrls.TCustomEdit.HideSelection">TCustomEdit.HideSelection</link>
</seealso>
</element>
<element name="TCustomAbstractGroupedEdit.SetHideSelection.AValue">
<short>New value for the property.</short>
</element>

<element name="TCustomAbstractGroupedEdit.SetLayout">
<short>Sets the value for the Layout property.</short>
<descr/>
<seealso>
<link id="TCustomAbstractGroupedEdit.Layout"/>
</seealso>
</element>
<element name="TCustomAbstractGroupedEdit.SetLayout.AValue">
<short>New value for the property.</short>
</element>

<element name="TCustomAbstractGroupedEdit.SetMaxLength">
<short>Sets the value for the MaxLength property.</short>
<descr/>
<seealso>
<link id="TCustomAbstractGroupedEdit.MaxLength"/>
<link id="TCustomEdit.MaxLength"/>
</seealso>
</element>
<element name="TCustomAbstractGroupedEdit.SetMaxLength.AValue">
<short>New value for the property.</short>
</element>

<element name="TCustomAbstractGroupedEdit.SetModified">
<short>Sets the value for the Modified property.</short>
<descr/>
<seealso>
<link id="TCustomAbstractGroupedEdit.Modified"/>
<link id="TCustomAbstractGroupedEdit.BaseEditor"/>
<link id="TCustomMaskEdit.Modified"/>
<link id="TCustomEdit.Modified"/>
</seealso>
</element>
<element name="TCustomAbstractGroupedEdit.SetModified.AValue">
<short>New value for the property.</short>
</element>

<element name="TCustomAbstractGroupedEdit.SetNumbersOnly">
<short>Sets the value for the NumbersOnly property.</short>
<descr/>
<seealso>
<link id="TCustomAbstractGroupedEdit.NumbersOnly"/>
<link id="TCustomAbstractGroupedEdit.BaseEditor"/>
<link id="#lcl.stdctrls.TCustomEdit.NumbersOnly">TCustomEdit.NumbersOnly</link>
</seealso>
</element>
<element name="TCustomAbstractGroupedEdit.SetNumbersOnly.AValue">
<short>New value for the property.</short>
</element>

<element name="TCustomAbstractGroupedEdit.SetParentColor">
<short>Sets the value for the ParentColor property.</short>
<descr/>
<seealso>
<link id="TCustomAbstractGroupedEdit.ParentColor"/>
<link id="TCustomAbstractGroupedEdit.BaseEditor"/>
<link id="TCustomEdit.ParentColor"/>
</seealso>
</element>
<element name="TCustomAbstractGroupedEdit.SetParentColor.AValue">
<short>New value for the property.</short>
</element>

<element name="TCustomAbstractGroupedEdit.SetPasswordChar">
<short>Sets the value for the PasswordChar property.</short>
<descr/>
<seealso>
<link id="TCustomAbstractGroupedEdit.PasswordChar"/>
<link id="TCustomAbstractGroupedEdit.BaseEditor"/>
<link id="#lcl.stdctrls.TCustomEdit.PasswordChar">TCustomEdit.PasswordChar</link>
</seealso>
</element>
<element name="TCustomAbstractGroupedEdit.SetPasswordChar.AValue">
<short>New value for the property.</short>
</element>

<element name="TCustomAbstractGroupedEdit.SetPopupMenu">
<short>Sets the value for the PopupMenu property.</short>
<descr/>
<seealso/>
</element>
<element name="TCustomAbstractGroupedEdit.SetPopupMenu.AValue">
<short>New value for the property.</short>
</element>

<element name="TCustomAbstractGroupedEdit.SetReadOnly">
<short>Sets the value for the ReadOnly property.</short>
<descr/>
<seealso/>
</element>
<element name="TCustomAbstractGroupedEdit.SetReadOnly.AValue">
<short>New value for the property.</short>
</element>

<element name="TCustomAbstractGroupedEdit.SetSelLength">
<short>Sets the value for the SelLength property.</short>
<descr/>
<seealso/>
</element>
<element name="TCustomAbstractGroupedEdit.SetSelLength.AValue">
<short>New value for the property.</short>
</element>

<element name="TCustomAbstractGroupedEdit.SetSelStart">
<short>Sets the value for the SelStart property.</short>
<descr/>
<seealso/>
</element>
<element name="TCustomAbstractGroupedEdit.SetSelStart.AValue">
<short>New value for the property.</short>
</element>

<element name="TCustomAbstractGroupedEdit.SetSelText">
<short>Sets the value for the SelText property.</short>
<descr/>
<seealso/>
</element>
<element name="TCustomAbstractGroupedEdit.SetSelText.AValue">
<short>New value for the property.</short>
</element>

<element name="TCustomAbstractGroupedEdit.SetSpacing">
<short>Sets the value for the Spacing property.</short>
<descr/>
<seealso/>
</element>
<element name="TCustomAbstractGroupedEdit.SetSpacing.Value">
<short>New value for the property.</short>
</element>

<element name="TCustomAbstractGroupedEdit.SetTabStop">
<short>Sets the value for the TabStop property.</short>
<descr/>
<seealso/>
</element>
<element name="TCustomAbstractGroupedEdit.SetTabStop.AValue">
<short>New value for the property.</short>
</element>

<element name="TCustomAbstractGroupedEdit.SetTextHint">
<short>Sets the value for the TextHint property.</short>
<descr/>
<seealso/>
</element>
<element name="TCustomAbstractGroupedEdit.SetTextHint.AValue">
<short>New value for the property.</short>
</element>

<element name="TCustomAbstractGroupedEdit.WSRegisterClass">
<short>
Registers the widget set class used to create new instances of the grouped 
edit.
</short>
<descr>
<p>
Calls the inherited method, and registers the following properties to be 
skipped during LCL component streaming:
</p>
<dl>
<dt>TextHintFontColor</dt>
<dd>Used in a previous version of Lazarus</dd>
<dt>TextHintFontStyle</dt>
<dd>Used in a previous version of Lazarus</dd>
</dl>
</descr>
<seealso>
<link id="#lcl.controls.TCustomControl.WSRegisterClass">TCustomControl.WSRegisterClass</link>
</seealso>
</element>

<element name="TCustomAbstractGroupedEdit.CalculatePreferredSize">
<short>
Calculates the preferred size for the control with optional space reserved by 
theme services.
</short>
<descr>
<p>
<var>CalculatePreferredSize</var> is an overridden procedure used to 
calculate the dimensions for the control. The calculated values are returned 
in <var>PreferredWidth</var> and <var>PreferredHeight</var>.
</p>
<p>
CalculatePreferredSize calls the inherited method, and forwards the method 
call to the <var>BaseEditor</var> control. When 
<var>AutoSizeHeightIsEditHeight</var> is set to <b>True</b>, the value 
calculated as the control height in BaseEditor is used as the value in the 
PreferredHeight argument. The value in PreferredWidth is always set to zero 
(<b>0</b>).
</p>
</descr>
<seealso>
<link id="TCustomAbstractGroupedEdit.AutoSizeHeightIsEditHeight"/>
<link id="#lcl.controls.TWinControl.CalculatePreferredSize">TWinControl.CalculatePreferredSize</link>
</seealso>
</element>
<element name="TCustomAbstractGroupedEdit.CalculatePreferredSize.PreferredWidth">
<short>Width for the control; always zero in the method.</short>
</element>
<element name="TCustomAbstractGroupedEdit.CalculatePreferredSize.PreferredHeight">
<short>Height for the control.</short>
</element>
<element name="TCustomAbstractGroupedEdit.CalculatePreferredSize.WithThemeSpace">
<short>
Indicates if additional space needed for theme services is reserved.
</short>
</element>

<element name="TCustomAbstractGroupedEdit.CreateBuddy">
<short>Creates the TControl instance assigned to the Buddy property.</short>
<descr>
<p>
<var>CreateBuddy</var> is a <var>TControl</var> function used to create the 
<var>TControl</var> instance assigned to the <var>Buddy</var> property. 
CreateBuddy calls <var>GetBuddyClassType</var> to get the class reference 
used to create new instances of the control, and calls its Create method 
using the current class instance as the owner for the TControl instance.
</p>
<p>
CreateBuddy is used the <var>Create</var> constructor.
</p>
</descr>
<seealso>
<link id="TCustomAbstractGroupedEdit.Buddy"/>
<link id="TCustomAbstractGroupedEdit.GetBuddyClassType"/>
<link id="TCustomAbstractGroupedEdit.Create"/>
<link id="TCustomAbstractGroupedEdit.CreateEditor"/>
</seealso>
</element>
<element name="TCustomAbstractGroupedEdit.CreateBuddy.Result">
<short>TControl instance created in the method.</short>
</element>

<element name="TCustomAbstractGroupedEdit.CreateEditor">
<short>Creates the TGEEdit instance used in the BaseEditor property.</short>
<descr/>
<seealso/>
</element>
<element name="TCustomAbstractGroupedEdit.CreateEditor.Result">
<short>TGEEdit instance created in the method.</short>
</element>

<element name="TCustomAbstractGroupedEdit.FocusAndMaybeSelectAll">
<short>
Gives focus to the control, and optionally selects text in its editor.
</short>
<descr>
<p>
<var>FocusAndMaybeSelectAll</var> is a procedure used to give focus to the 
control, and to optionally select text in its editor. FocusAndMaybeSelectAll 
calls the <var>SetFocus</var> method in <var>BaseEditor</var> to ensure that 
the editor portion of the grouped edit control has focus.
</p>
<p>
The value in <var>AutoSelect</var> is used to determine the selected text in 
the BaseEditor control. When AutoSelect is set to <b>True</b>, the 
<var>SelectAll</var> method in BaseEditor is called to select all of the 
content in the control. When <b>False</b>, the <var>SelStart</var> method in 
BaseEditor is set to the maximum value for an <var>Integer</var>, ensuring 
that the caret position is located at the end of the control value.
</p>
<p>
FocusAndMaybeSelectAll is used in the implementation of the 
<var>BuddyClick</var> method.
</p>
</descr>
<seealso>
<link id="TCustomAbstractGroupedEdit.BaseEditor"/>
<link id="TCustomAbstractGroupedEdit.AutoSelect"/>
<link id="TCustomAbstractGroupedEdit.BuddyClick"/>
<link id="TCustomAbstractGroupedEdit.SelectAll"/>
<link id="TCustomAbstractGroupedEdit.SelStart"/>
</seealso>
</element>

<element name="TCustomAbstractGroupedEdit.GetEditorClassType">
<short>
Gets the class reference used to create the BaseEditor for the control.
</short>
<descr/>
<seealso/>
</element>
<element name="TCustomAbstractGroupedEdit.GetEditorClassType.Result">
<short>Class reference used to create the BaseEditor for the control.</short>
</element>

<element name="TCustomAbstractGroupedEdit.GetBuddyClassType">
<short>
Gets the class reference used to create the Buddy for the control.
</short>
<descr/>
<seealso/>
</element>
<element name="TCustomAbstractGroupedEdit.GetBuddyClassType.Result">
<short>Class reference used to create the Buddy for the control.</short>
</element>

<element name="TCustomAbstractGroupedEdit.GetControlClassDefaultSize">
<short>Gets the default size for new instances of the control.</short>
<descr/>
<seealso/>
</element>
<element name="TCustomAbstractGroupedEdit.GetControlClassDefaultSize.Result">
<short>Default size for new class instances.</short>
</element>

<element name="TCustomAbstractGroupedEdit.SetDirectInput">
<short>Sets the value for the DirectInput property.</short>
<descr/>
<seealso/>
</element>
<element name="TCustomAbstractGroupedEdit.SetDirectInput.AValue">
<short>New value for the property.</short>
</element>

<element name="TCustomAbstractGroupedEdit.RealGetText">
<short>Gets the value for the text in the control.</short>
<descr/>
<seealso/>
</element>
<element name="TCustomAbstractGroupedEdit.RealGetText.Result">
<short>Value for the text in the control.</short>
</element>

<element name="TCustomAbstractGroupedEdit.RealSetText">
<short>Sets the value for the text in the control.</short>
<descr/>
<seealso/>
</element>
<element name="TCustomAbstractGroupedEdit.RealSetText.AValue">
<short>New value for the text in the control.</short>
</element>

<element name="TCustomAbstractGroupedEdit.GetEditPopupMenu">
<short>Gets the popup menu for the BaseEditor in the control.</short>
<descr/>
<seealso/>
</element>
<element name="TCustomAbstractGroupedEdit.GetEditPopupMenu.Result">
<short>The popup menu for the BaseEditor in the control.</short>
</element>

<element name="TCustomAbstractGroupedEdit.GetBuddyCaption">
<short>Gets the Caption used in the Buddy property.</short>
<descr/>
<seealso/>
</element>
<element name="TCustomAbstractGroupedEdit.GetBuddyCaption.Result">
<short>Caption used in the Buddy property.</short>
</element>

<element name="TCustomAbstractGroupedEdit.GetBuddyCursor">
<short>Gets the value for the BuddyCursor property.</short>
<descr/>
<seealso>
<link id="TCustomAbstractGroupedEdit.BuddyCursor"/>
</seealso>
</element>
<element name="TCustomAbstractGroupedEdit.GetBuddyCursor.Result">
<short>Value for the property.</short>
</element>

<element name="TCustomAbstractGroupedEdit.GetBuddyHint">
<short>Gets the value for the BuddyHint property.</short>
<descr/>
<seealso>
<link id="TCustomAbstractGroupedEdit.BuddyHint"/>
</seealso>
</element>
<element name="TCustomAbstractGroupedEdit.GetBuddyHint.Result">
<short>Value for the property.</short>
</element>

<element name="TCustomAbstractGroupedEdit.GetBuddyWidth">
<short>Gets the value for the BuddyWidth property.</short>
<descr/>
<seealso>
<link id="TCustomAbstractGroupedEdit.BuddyWidth"/>
</seealso>
</element>
<element name="TCustomAbstractGroupedEdit.GetBuddyWidth.Result">
<short>Value for the property.</short>
</element>

<element name="TCustomAbstractGroupedEdit.GetBuddyVisible">
<short>Gets the Visible property for the Buddy control.</short>
<descr/>
<seealso>
<link id="TCustomAbstractGroupedEdit.Buddy"/>
</seealso>
</element>
<element name="TCustomAbstractGroupedEdit.GetBuddyVisible.Result">
<short><b>True</b> if the Buddy control is visible.</short>
</element>

<element name="TCustomAbstractGroupedEdit.SetBuddyCaption">
<short>Sets the Caption used in the Buddy property.</short>
<descr/>
<seealso>
<link id="TCustomAbstractGroupedEdit.BuddyCaption"/>
</seealso>
</element>
<element name="TCustomAbstractGroupedEdit.SetBuddyCaption.AValue">
<short>Value assigned as the Caption in the Buddy property.</short>
</element>

<element name="TCustomAbstractGroupedEdit.SetBuddyCursor">
<short>Sets the cursor shape used in the Buddy property.</short>
<descr/>
<seealso>
<link id="TCustomAbstractGroupedEdit.BuddyCursor"/>
</seealso>
</element>
<element name="TCustomAbstractGroupedEdit.SetBuddyCursor.AValue">
<short>Value assigned as the Cursor in the Buddy property.</short>
</element>

<element name="TCustomAbstractGroupedEdit.SetBuddyHint">
<short>Sets the Hint displayed for the Buddy property.</short>
<descr/>
<seealso>
<link id="TCustomAbstractGroupedEdit.BuddyHint"/>
</seealso>
</element>
<element name="TCustomAbstractGroupedEdit.SetBuddyHint.AValue">
<short>Value assigned as the Hint in the Buddy property.</short>
</element>

<element name="TCustomAbstractGroupedEdit.SetBuddyWidth">
<short>Sets the Width used for the Buddy property.</short>
<descr/>
<seealso>
<link id="TCustomAbstractGroupedEdit.BuddyWidth"/>
</seealso>
</element>
<element name="TCustomAbstractGroupedEdit.SetBuddyWidth.AValue">
<short>Value assigned as the Width in the Buddy property.</short>
</element>

<element name="TCustomAbstractGroupedEdit.SetBuddyVisible">
<short>Sets the value for the Visible property in the Buddy control.</short>
<descr/>
<seealso>
<link id="TCustomAbstractGroupedEdit.Buddy"/>
</seealso>
</element>
<element name="TCustomAbstractGroupedEdit.SetBuddyVisible.AValue">
<short>
<b>True</b> to display the Buddy control, <b>False</b> to hide it.
</short>
</element>

<element name="TCustomAbstractGroupedEdit.BuddyClick">
<short>Performs actions needed when the Buddy control is clicked.</short>
<descr>
<p>
Used in internal methods to redirect events from the <var>Buddy</var> control 
to the container class (the current class instance).
</p>
<p>
<var>BuddyClick</var> uses the value in <var>ReadOnly</var> to determine if 
the grouped edit control should respond to a Click event from the 
<var>Buddy</var> control. When ReadOnly is <b>True</b>, no actions are 
performed in the method.
</p>
<p>
BuddyClick signals the <var>OnBuddyEvent</var> handler (when assigned). When 
the BuddyClick code points to this method (and not an overridden one in a 
descendant), the <var>FocusOnBuddyClick</var> method is called to determine 
if focus and selection changes are handled by the current class instance.
</p>
<p>
Derived controls may override <var>BuddyClick</var> to run a dialog after 
calling the inherited method. In this scenario, selecting the text in this 
method is most likely premature. It is the responsibility of the derived 
control to implement focus changes and selection as needed.
</p>
</descr>
<seealso>
<link id="TCustomAbstractGroupedEdit.Buddy"/>
<link id="TCustomAbstractGroupedEdit.ReadOnly"/>
<link id="TCustomAbstractGroupedEdit.FocusOnBuddyClick"/>
</seealso>
</element>

<element name="TCustomAbstractGroupedEdit.DoEnter">
<short>Performs actions needed when the control is entered.</short>
<descr>
<p>
<var>DoEnter</var> is an overridden procedure used to perform actions needed 
when the control is entered using keyboard navigation. DoEnter calls the 
inherited DoEnter method to signal the OnEnter event handler, and calls the 
<var>SetFocus</var> method in <var>BaseEditor</var> at run-time. The focus 
change is not performed at design-time.
</p>
</descr>
<seealso>
<link id="#lcl.controls.TWinControl.DoEnter">TWinControl.DoEnter</link>
</seealso>
</element>

<element name="TCustomAbstractGroupedEdit.EditChange">
<short>Signals the OnEditChange event handler, when assigned.</short>
<descr>
<p>
<var>EditChange</var> is a procedure used to signals the 
<var>OnEditChange</var> event handler, when assigned. EditChange is used in 
the implementation of the <var>InternalOnEditChange</var> method, which is 
assigned as the <var>OnChange</var> event handler in the 
<var>BaseEditor</var> property.
</p>
</descr>
<seealso>
<link id="TCustomAbstractGroupedEdit.BaseEditor"/>
<link id="TCustomEdit.OnChange"/>
</seealso>
</element>

<element name="TCustomAbstractGroupedEdit.EditClick">
<short>Signals the internal OnEditClick event handler, when assigned.</short>
<descr/>
<seealso>
<link id="TCustomAbstractGroupedEdit.BaseEditor"/>
</seealso>
</element>

<element name="TCustomAbstractGroupedEdit.EditContextPopup">
<short>Signals the OnContextPopup event handler (when assigned).</short>
<descr/>
<seealso>
<link id="TCustomAbstractGroupedEdit.OnContextPopup"/>
</seealso>
</element>
<element name="TCustomAbstractGroupedEdit.EditContextPopup.MousePos">
<short>Mouse coordinates for the context pop-up.</short>
</element>
<element name="TCustomAbstractGroupedEdit.EditContextPopup.Handled">
<short><b>True</b> if the pop-up was handled for the control.</short>
</element>

<element name="TCustomAbstractGroupedEdit.EditDblClick">
<short>Signals the OnDblClick event handler (when assigned).</short>
<descr/>
<seealso>
<link id="TCustomAbstractGroupedEdit.OnDblClick"/>
</seealso>
</element>

<element name="TCustomAbstractGroupedEdit.EditDragDrop">
<short>Signals the OnDragDrop event handler (when assigned).</short>
<descr/>
<seealso>
<link id="TCustomAbstractGroupedEdit.OnDragDrop"/>
</seealso>
</element>
<element name="TCustomAbstractGroupedEdit.EditDragDrop.Source">
<short>Contains the dragged object for the event notification.</short>
</element>
<element name="TCustomAbstractGroupedEdit.EditDragDrop.X">
<short>
Horizontal coordinate for the mouse pointer when it was released.
</short>
</element>
<element name="TCustomAbstractGroupedEdit.EditDragDrop.Y">
<short>
Vertical coordinate for the mouse pointer when it was released.
</short>
</element>

<element name="TCustomAbstractGroupedEdit.EditDragOver">
<short>Signals the OnDragOver event handler (when assigned).</short>
<descr/>
<seealso>
<link id="TCustomAbstractGroupedEdit.OnDragOver"/>
<link id="TCustomAbstractGroupedEdit.BaseEditor"/>
</seealso>
</element>
<element name="TCustomAbstractGroupedEdit.EditDragOver.Source">
<short>
Object instance with the dragged object for the drag over event.
</short>
</element>
<element name="TCustomAbstractGroupedEdit.EditDragOver.X">
<short>
Horizontal coordinate for the mouse pointer when the dragged object entered, 
left, or was moved on the control.
</short>
</element>
<element name="TCustomAbstractGroupedEdit.EditDragOver.Y">
<short>
Vertical coordinate for the mouse pointer when the dragged object entered, 
left, or was moved on the control.
</short>
</element>
<element name="TCustomAbstractGroupedEdit.EditDragOver.State">
<short>
Indicates whether the dragged object entered, left, or was moved on the 
control.
</short>
</element>
<element name="TCustomAbstractGroupedEdit.EditDragOver.Accept">
<short>
Returns <b>True</b> if the event handler accepts or responds to the drag over 
event.
</short>
</element>

<element name="TCustomAbstractGroupedEdit.EditEditingDone">
<short>Signals the OnEditEditingDone event handler (when assigned).</short>
<descr>
<p>
<var>EditEditingDone</var> is a method used to signal the OnEditingDone event 
handler (when assigned) for the grouped edit control. The method is assigned 
to the the OnEditingDone event handler in BaseEditor in the constructor for 
the class instance. It ensures that the grouped edit control performs the 
OnEditingDone event as a surrogate for the BaseEditor control.
</p>
<p>
An application can implement an assign a routine to OnEditingDone to perform 
any actions needed when editing has been completed in the BaseEditor control.
</p>
</descr>
<seealso>
<link id="TCustomAbstractGroupedEdit.OnEditingDone"/>
<link id="TCustomAbstractGroupedEdit.BaseEditor"/>
<link id="TCustomAbstractGroupedEdit.Create"/>
<link id="#lcl.controls.TControl.OnEditingDone">TControl.OnEditingDone</link>
</seealso>
</element>

<element name="TCustomAbstractGroupedEdit.EditEndDrag">
<short>Signals the OnEditEndDrag event handler (when assigned).</short>
<descr>
<p>
Called from the internal end drag handler routine assigned to the BaseEditor 
for the grouped edit control.
</p>
</descr>
<seealso>
<link id="TCustomAbstractGroupedEdit.OnEndDrag"/>
<link id="TCustomAbstractGroupedEdit.BaseEditor"/>
<link id="#lcl.controls.TControl.OnEndDrag">TControl.OnEndDrag</link>
</seealso>
</element>
<element name="TCustomAbstractGroupedEdit.EditEndDrag.Target">
<short>
Object instance which is the drop target for the drag operation.
</short>
</element>
<element name="TCustomAbstractGroupedEdit.EditEndDrag.X">
<short>
Horizontal mouse coordinate where the mouse button was released.
</short>
</element>
<element name="TCustomAbstractGroupedEdit.EditEndDrag.Y">
<short>
Vertical mouse coordinate where the mouse button was released.
</short>
</element>

<element name="TCustomAbstractGroupedEdit.EditEnter">
<short>Signals the OnEnter event handler (when assigned).</short>
<descr/>
<seealso>
<link id="TCustomAbstractGroupedEdit.BaseEditor"/>
<link id="TCustomAbstractGroupedEdit.OnEnter"/>
<link id="TCustomAbstractGroupedEdit.OnExit"/>
<link id="TCustomAbstractGroupedEdit.Create"/>
<link id="#lcl.controls.TWinControl.OnEnter">TWinControl.OnEnter</link>
</seealso>
</element>

<element name="TCustomAbstractGroupedEdit.EditExit">
<short>Signals the OnExit event handler (when assigned).</short>
<descr/>
<seealso>
<link id="TCustomAbstractGroupedEdit.OnExit"/>
<link id="TCustomAbstractGroupedEdit.OnEnter"/>
<link id="TCustomAbstractGroupedEdit.BaseEditor"/>
<link id="TCustomAbstractGroupedEdit.Create"/>
<link id="#lcl.controls.TWinControl.OnExit">TWinControl.OnEExit</link>
</seealso>
</element>

<element name="TCustomAbstractGroupedEdit.EditKeyDown">
<short>Signals the OnKeyDown event handler (when assigned).</short>
<descr>
<p>
Called from the internal key down handler routine assigned to the BaseEditor 
for the grouped edit control.
</p>
</descr>
<seealso>
<link id="TCustomAbstractGroupedEdit.BaseEditor"/>
<link id="TCustomAbstractGroupedEdit.OnKeyDown"/>
</seealso>
</element>
<element name="TCustomAbstractGroupedEdit.EditKeyDown.Key">
<short>
Virtual key code for the key down event notification.
</short>
</element>
<element name="TCustomAbstractGroupedEdit.EditKeyDown.Shift">
<short>
Ctrl, Alt, or Shift modifier for the key code in the key down event 
notification.
</short>
</element>

<element name="TCustomAbstractGroupedEdit.EditKeyPress">
<short>Signals the OnKeyPress event handler (when assigned).</short>
<descr>
<p>
Called from the internal key press handler routine assigned to the BaseEditor 
for the grouped edit control.
</p>
</descr>
<seealso>
<link id="TCustomAbstractGroupedEdit.OnKeyPress"/>
</seealso>
</element>
<element name="TCustomAbstractGroupedEdit.EditKeyPress.Key">
<short>
Character with the value for the key press notification.
</short>
</element>

<element name="TCustomAbstractGroupedEdit.EditKeyUp">
<short>Signals the OnKeyUp event handler (when assigned).</short>
<descr/>
<seealso/>
</element>
<element name="TCustomAbstractGroupedEdit.EditKeyUp.Key">
<short>
Virtual key code for the key up event notification.
</short>
</element>
<element name="TCustomAbstractGroupedEdit.EditKeyUp.Shift">
<short>
Ctrl, Alt, or Shift modifier for the key code in the key up event notification.
</short>
</element>

<element name="TCustomAbstractGroupedEdit.EditMouseDown">
<short>Signals the OnMouseDown event handler (when assigned).</short>
<descr/>
<seealso/>
</element>
<element name="TCustomAbstractGroupedEdit.EditMouseDown.Button">
<short>
Mouse button for the mouse down event notification.
</short>
</element>
<element name="TCustomAbstractGroupedEdit.EditMouseDown.Shift">
<short>
Ctrl, Alt, or Shift modifier for the mouse button down event notification.
</short>
</element>
<element name="TCustomAbstractGroupedEdit.EditMouseDown.X">
<short>
Horizontal mouse coordinate for the mouse button down event notification.
</short>
</element>
<element name="TCustomAbstractGroupedEdit.EditMouseDown.Y">
<short>
Vertical mouse coordinate for the mouse button down event notification.
</short>
</element>

<element name="TCustomAbstractGroupedEdit.EditMouseUp">
<short>Signals the OnMouseUp event handler (when assigned).</short>
<descr/>
<seealso>
<link id="TCustomAbstractGroupedEdit.OnMouseUp"/>
<link id="#lcl.controls.TControl.OnMouseUp">TControl.OnMouseUp</link>
</seealso>
</element>
<element name="TCustomAbstractGroupedEdit.EditMouseUp.Button">
<short>
Mouse button for the button up event notification.
</short>
</element>
<element name="TCustomAbstractGroupedEdit.EditMouseUp.Shift">
<short>
Ctrl, Alt, or Shift modifier for the mouse button up event notification.
</short>
</element>
<element name="TCustomAbstractGroupedEdit.EditMouseUp.X">
<short>
Horizontal mouse coordinate where the mouse button up event occurred.
</short>
</element>
<element name="TCustomAbstractGroupedEdit.EditMouseUp.Y">
<short>
Vertical mouse coordinate where the mouse button up event occurred.
</short>
</element>

<element name="TCustomAbstractGroupedEdit.EditMouseEnter">
<short>Signals the OnMouseEnter event handler (when assigned).</short>
<descr/>
<seealso>
<link id="TCustomAbstractGroupedEdit.OnMouseEnter"/>
<link id="#lcl.controls.TControl.OnMouseEnter">TControl.OnMouseEnter</link>
</seealso>
</element>

<element name="TCustomAbstractGroupedEdit.EditMouseLeave">
<short>Signals the OnMouseLeave event handler (when assigned).</short>
<descr/>
<seealso>
<link id="TCustomAbstractGroupedEdit.OnMouseLeave"/>
<link id="#lcl.controls.TControl.OnMouseLeave">TControl.OnMouseLeave</link>
</seealso>
</element>

<element name="TCustomAbstractGroupedEdit.EditMouseMove">
<short>Signals the OnMouseMove event handler (when assigned).</short>
<descr/>
<seealso>
<link id="TCustomAbstractGroupedEdit.OnMouseMove"/>
<link id="#lcl.controls.TControl.OnMouseMove">TControl.OnMouseMove</link>
</seealso>
</element>
<element name="TCustomAbstractGroupedEdit.EditMouseMove.Shift">
<short>
Ctrl, Alt, or Shift modifier for the mouse move notification.
</short>
</element>
<element name="TCustomAbstractGroupedEdit.EditMouseMove.X">
<short>
Horizontal mouse coordinate for the mouse event.
</short>
</element>
<element name="TCustomAbstractGroupedEdit.EditMouseMove.Y">
<short>
Vertical mouse coordinate for the mouse event.
</short>
</element>

<element name="TCustomAbstractGroupedEdit.EditMouseWheel">
<short>
Signals the OnMouseWheel event handler (when assigned).
</short>
<descr/>
<seealso>
<link id="TCustomAbstractGroupedEdit.OnMouseWheel"/>
<link id="#lcl.controls.TControl.OnMouseWheel">TControl.OnMouseWheel</link>
</seealso>
</element>
<element name="TCustomAbstractGroupedEdit.EditMouseWheel.Shift">
<short>
Ctrl, Alt, or Shift modifier for the mouse wheel event notification.
</short>
</element>
<element name="TCustomAbstractGroupedEdit.EditMouseWheel.WheelDelta">
<short>
Number of units (or notches) that the mouse wheel was moved in the notification 
event.
</short>
</element>
<element name="TCustomAbstractGroupedEdit.EditMouseWheel.MousePos">
<short>
TPoint instance with the coordinates for the mouse pointer in the notification 
event.
</short>
</element>
<element name="TCustomAbstractGroupedEdit.EditMouseWheel.Handled">
<short>
Returns <b>True</b> if the mouse wheel event is handled by the control.
</short>
</element>

<element name="TCustomAbstractGroupedEdit.EditMouseWheelUp">
<short>
Signals the OnMouseWheelUp event handler (when assigned).
</short>
<descr/>
<seealso>
<link id="TCustomAbstractGroupedEdit.OnMouseWheelUp"/>
<link id="#lcl.controls.TControl.OnMouseWheelUp">TControl.OnMouseWheelUp</link>
</seealso>
</element>
<element name="TCustomAbstractGroupedEdit.EditMouseWheelUp.Shift">
<short>
Ctrl, Alt, or Shift modifier for the mouse wheel event.
</short>
</element>
<element name="TCustomAbstractGroupedEdit.EditMouseWheelUp.MousePos">
<short>
TPoint instance with the coordinates for the mouse pointer in the notification 
event.
</short>
</element>
<element name="TCustomAbstractGroupedEdit.EditMouseWheelUp.Handled">
<short>
Returns <b>True</b> if the mouse wheel event is handled by the control.
</short>
</element>

<element name="TCustomAbstractGroupedEdit.EditMouseWheelDown">
<short>
Signals the OnMouseWheelDown event handler (when assigned).
</short>
<descr/>
<seealso>
<link id="TCustomAbstractGroupedEdit.OnMouseWheelDown"/>
<link id="#lcl.controls.TControl.OnMouseWheelDown">TControl.OnMouseWheelDown</link>
</seealso>
</element>
<element name="TCustomAbstractGroupedEdit.EditMouseWheelDown.Shift">
<short>
Ctrl, Alt, or Shift modifier for the mouse wheel event.
</short>
</element>
<element name="TCustomAbstractGroupedEdit.EditMouseWheelDown.MousePos">
<short>
TPoint instance with the coordinates for the mouse pointer in the notification 
event.
</short></element>
<element name="TCustomAbstractGroupedEdit.EditMouseWheelDown.Handled">
<short>
Returns <b>True</b> if the mouse wheel event is handled by the control.
</short>
</element>

<element name="TCustomAbstractGroupedEdit.EditUtf8KeyPress">
<short>Signals the OnUtf8KeyPress event handler (when assigned).</short>
<descr/>
<seealso/>
</element>
<element name="TCustomAbstractGroupedEdit.EditUtf8KeyPress.UTF8Key">
<short>
UTF-8-encoded value for the key press event.
</short>
</element>

<element name="TCustomAbstractGroupedEdit.EditStartDrag">
<short>Signals the OnStartDrag event handler (when assigned).</short>
<descr/>
<seealso/>
</element>
<element name="TCustomAbstractGroupedEdit.EditStartDrag.DragObject">
<short>
Object instance dragged in the drag notification.
</short>
</element>

<element name="TCustomAbstractGroupedEdit.UpdateSpacing">
<short>
Updates border spacing in BaseEditor for the Layout and visibility of the 
Buddy control.
</short>
<descr/>
<seealso>
<link id="TCustomAbstractGroupedEdit.BaseEditor"/>
<link id="TCustomAbstractGroupedEdit.Buddy"/>
<link id="TCustomAbstractGroupedEdit.Spacing"/>
<link id="TCustomAbstractGroupedEdit.Layout"/>
<link id="#lcl.controls.TControl.BorderSpacing">TControl.BorderSpacing</link>
</seealso>
</element>

<element name="TCustomAbstractGroupedEdit.CheckCursor">
<short>
Forwards a CheckCursor method call to the BaseEditor for the control.
</short>
<descr/>
<seealso/>
</element>

<element name="TCustomAbstractGroupedEdit.CMParentColorChanged">
<short>
Handles the control message received when the ParentColor property is changed.
</short>
<descr>
<p>
<var>CMParentColorChanged</var> is method used to handle the 
CM_PARENTCOLORCHANGED control message for the grouped edit control. It 
reimplements the method introduced in the TControl ancestor to ensure that 
values in the ParentColor and Color properties are updated for the composite 
control. When ParentColor is enabled, the Color value from the Parent control 
is applied to the class instance.
</p>
</descr>
<seealso>
<link id="TCustomAbstractGroupedEdit.Color"/>
<link id="TCustomAbstractGroupedEdit.BaseEditor"/>
<link id="#lcl.controls.TCustomControl.SetColor">TCustomControl.SetColor</link>
<link id="#lcl.controls.TControl.Parent">TControl.Parent</link>
<link id="#lcl.controls.TControl.ParentColor">TControl.ParentColor</link>
<link id="#lcl.controls.TControl.CMParentColorChanged">TControl.CMParentColorChanged</link>
</seealso>
</element>
<element name="TCustomAbstractGroupedEdit.CMParentColorChanged.Message">
<short>
Message instance received by the control and handled in the method.
</short>
</element>

<element name="TCustomAbstractGroupedEdit.EditCanModify">
<short>Indicates if BaseEditor can be modified.</short>
<descr/>
<seealso/>
</element>
<element name="TCustomAbstractGroupedEdit.EditCanModify.Result">
<short>
Contains the value returned from the EditCanModify method in BaseEditor.
</short>
</element>

<element name="TCustomAbstractGroupedEdit.GetSel">
<short>Gets the offsets for the current text selection in the control.</short>
<descr/>
<seealso/>
</element>
<element name="TCustomAbstractGroupedEdit.GetSel._SelStart">
<short>Starting position for the text selection in the control.</short>
</element>
<element name="TCustomAbstractGroupedEdit.GetSel._SelStop">
<short>Ending position for the text selection in the control.</short>
</element>

<element name="TCustomAbstractGroupedEdit.GetSpacing">
<short>Gets the value for the Spacing property.</short>
<descr/>
<seealso/>
</element>
<element name="TCustomAbstractGroupedEdit.GetSpacing.Result">
<short>Value for the property.</short>
</element>

<element name="TCustomAbstractGroupedEdit.SetSel">
<short>Sets the current text selection in the control.</short>
<descr/>
<seealso/>
</element>
<element name="TCustomAbstractGroupedEdit.SetSel._SelStart">
<short>Initial position selected in the control.</short>
</element>
<element name="TCustomAbstractGroupedEdit.SetSel._SelStop">
<short>Final position selected in the control.</short>
</element>

<element name="TCustomAbstractGroupedEdit.Loaded">
<short>
Performs actions when the control has finished loading in the LCL streaming 
mechanism.
</short>
<descr/>
<seealso/>
</element>

<element name="TCustomAbstractGroupedEdit.Reset">
<short>Forwards a Reset method call to the BaseEditor in the control.</short>
<descr/>
<seealso/>
</element>

<element name="TCustomAbstractGroupedEdit.SetAutoSize">
<short>Sets the value for the AutoSize property.</short>
<descr>
<p>
SetAutoSize is overridden in TCustomAbstractGroupedEdit, and calls the 
inherited method on entry. It ensures that the new value for the property is 
applied to AutoSize property in BaseEditor.
</p>
</descr>
<seealso>
<link id="TCustomAbstractGroupedEdit.AutoSize"/>
<link id="TCustomAbstractGroupedEdit.BaseEditor"/>
</seealso>
</element>
<element name="TCustomAbstractGroupedEdit.SetAutoSize.AValue">
<short>New value for the property.</short>
</element>

<element name="TCustomAbstractGroupedEdit.SetColor">
<short>Sets the value for the Color property.</short>
<descr/>
<seealso>
<link id="TCustomAbstractGroupedEdit.Color"/>
</seealso>
</element>
<element name="TCustomAbstractGroupedEdit.SetColor.AValue">
<short>New value for the property.</short>
</element>

<element name="TCustomAbstractGroupedEdit.SetCursor">
<short>Sets the value for the Cursor property.</short>
<descr/>
<seealso>
<link id="#lcl.controls.TControl.Cursor">TControl.Cursor</link>
</seealso>
</element>
<element name="TCustomAbstractGroupedEdit.SetCursor.AValue">
<short>New value for the property.</short>
</element>

<element name="TCustomAbstractGroupedEdit.ShouldAutoAdjust">
<short>
Indicates if the height or width is affected during auto-adjust.
</short>
<descr>
<p>
AWidth is set to <b>True</b> in TCustomAbstractGroupedEdit. AHeight is set to 
<b>False</b> when AutoSize is <b>True</b>, and vice-versa.
</p>
</descr>
<seealso/>
</element>
<element name="TCustomAbstractGroupedEdit.ShouldAutoAdjust.AWidth">
<short>
Returns <b>True</b> in TCustomAbstractGroupedEdit.
</short>
</element>
<element name="TCustomAbstractGroupedEdit.ShouldAutoAdjust.AHeight">
<short>
Returns <b>True</b> if AutoSize is not enabled for the grouped edit control.
</short>
</element>

<element name="TCustomAbstractGroupedEdit.AutoSelect">
<short>
Indicates if the text in the control is automatically selected when focus is 
received.
</short>
<descr/>
<seealso/>
</element>

<element name="TCustomAbstractGroupedEdit.AutoSelected">
<short>
Indicates if the current text selection was performed automatically.
</short>
<descr/>
<seealso/>
</element>

<element name="TCustomAbstractGroupedEdit.Buddy">
<short>
Represents the associated TControl instance in the grouped edit control.
</short>
<descr>
<p>
<var>Buddy</var> normally contains a <var>TSpeedButton</var>, 
<var>TUpDown</var> or similar control. Derived classes may implement a 
different class type for the control using the <var>GetBuddyClassType</var> 
method.
</p>
</descr>
<seealso>
<link id="TCustomAbstractGroupedEdit.BaseEditor"/>
<link id="TCustomAbstractGroupedEdit.GetBuddyClassType"/>
</seealso>
</element>

<element name="TCustomAbstractGroupedEdit.BuddyCaption">
<short>Caption used for the Buddy control.</short>
<descr/>
<seealso/>
</element>

<element name="TCustomAbstractGroupedEdit.BuddyCursor">
<short>Cursor shape used for the Buddy control.</short>
<descr/>
<seealso/>
</element>

<element name="TCustomAbstractGroupedEdit.BuddyHint">
<short>Hint displayed for the Buddy control.</short>
<descr/>
<seealso/>
</element>

<element name="TCustomAbstractGroupedEdit.BuddyWidth">
<short>Width for the Buddy control.</short>
<descr/>
<seealso/>
</element>

<element name="TCustomAbstractGroupedEdit.Color">
<short>Background color for the BaseEditor on the control.</short>
<descr>
<p>
Does not apply to the Buddy control (button); buttons always used the 
system-defined color for the button surface.
</p>
</descr>
<seealso>
<link id="TCustomAbstractGroupedEdit.BaseEditor"/>
<link id="#lcl.controls.TControl.Color">TControl.Color</link>
</seealso>
</element>

<element name="TCustomAbstractGroupedEdit.DirectInput">
<short>
Indicates if text can be entered directly into the BaseEditor control.
</short>
<descr/>
<seealso/>
</element>

<element name="TCustomAbstractGroupedEdit.BaseEditor">
<short>
Represents the control used as the editor for the value in the grouped edit 
control.
</short>
<descr>
</descr>
<seealso>
<link id="TCustomAbstractGroupedEdit.Buddy"/>
</seealso>
</element>

<element name="TCustomAbstractGroupedEdit.EditMask">
<short>
Contains the masking characters used in the editor for the control.
</short>
<descr>
<p>
<var>EditMask</var> is a <var>String</var> property that contains the masking 
characters used in the editor for the control. EditMask redirects read and 
write access for the property to the <var>TGEEdit</var> instance in the 
<var>BaseEditor</var> property.
</p>
</descr>
<seealso>
<link id="TCustomAbstractGroupedEdit.BaseEditor"/>
<link id="TGEEdit"/>
<link id="#lcl.maskedit.TCustomMaskEdit.EditMask">TCustomMaskEdit.EditMask</link>
</seealso>
</element>

<element name="TCustomAbstractGroupedEdit.EditText">
<short>
Contains the value entered in the control including masking characters.
</short>
<descr>
<p>
<var>EditText</var> is a <var>String</var> property which contains the value 
entered in the control including masking characters. Read and write access to 
the property value are redirected to the <var>BaseEditor</var> control.
</p>
<p>
Use the <var>Text</var> property to access the actual characters in the 
control value, excluding any characters introduced by an edit mask.
</p>
</descr>
<seealso>
<link id="TCustomAbstractGroupedEdit.BaseEditor"/>
<link id="#lcl.maskedit.TCustomMaskEdit.EditText">TCustomMaskEdit.EditText</link>
</seealso>
</element>

<element name="TCustomAbstractGroupedEdit.FocusOnBuddyClick">
<short>
Determines if the control receives focus when the Buddy control is clicked.
</short>
<descr>
<p>
<var>FocusOnBuddyClick</var> is a <var>Boolean</var> property which 
determines if the control receives focus (and a potential change to the text 
selection in the editor) when the <var>Buddy</var> control is clicked. The 
default value for the property is <b>False</b>.
</p>
<p>
FocusOnBuddyClick is used in the implementation of the BuddyClick method.
</p>
</descr>
<seealso>
<link id="TCustomAbstractGroupedEdit.Buddy"/>
<link id="TCustomAbstractGroupedEdit.BuddyClick"/>
</seealso>
</element>

<element name="TCustomAbstractGroupedEdit.IsMasked">
<short>
Indicates if an edit mask is in use in the BaseEditor in the grouped edit 
control.
</short>
<descr/>
<seealso/>
</element>

<element name="TCustomAbstractGroupedEdit.Layout">
<short>
Controls the alignment of the edit control and its associate.
</short>
<descr>
<p>
<var>Layout</var> is a <var>TLeftRight</var> property that determines the 
setting for the Align property in the <var>BaseEditor</var> and the 
<var>Buddy</var> controls. The default value for the property is 
<var>taLeftJustify</var>.
</p>
<p>
Changing the value in Layout cause the Align properties in the grouped 
controls to be set to the appropriate values. For example:
</p>
<dl>
<dt>taLeftJustify</dt>
<dd>
Causes the Buddy control to be right aligned (opposite of the editor control).
</dd>
<dt>taRightJustify</dt>
<dd>
Causes the Buddy control to be left aligned (opposite of the editor control).
</dd>
</dl>
</descr>
<seealso>
<link id="TCustomAbstractGroupedEdit.BaseEditor"/>
<link id="TCustomAbstractGroupedEdit.Buddy"/>
</seealso>
</element>

<element name="TCustomAbstractGroupedEdit.Spacing">
<short>
Spacing used between the BaseEditor and the Buddy controls.
</short>
<descr>
<p>
<var>Spacing</var> is an <var>Integer</var> property which contains the number 
of pixels reserved as spacing between the BaseEditor and Buddy controls. The 
default value for the property is 0, and reserves no space between the 
controls on the grouped edit control. Changing the value for the property 
causes the UpdateSpacing method to be called to reposition the Buddy control 
using the Layout for the grouped edit control.
</p>
<p>
Use Layout to set the position for the Buddy control relative to the 
BaseEditor control. Spacing is applied to BaseEditor as BorderSpacing on the 
edge specified in Layout.
</p>
</descr>
<seealso>
<link id="TCustomAbstractGroupedEdit.BaseEditor"/>
<link id="TCustomAbstractGroupedEdit.Buddy"/>
<link id="TCustomAbstractGroupedEdit.Layout"/>
<link id="TCustomAbstractGroupedEdit.UpdateSpacing"/>
<link id="#lcl.controls.TControl.BorderSpacing">TControl.BorderSpacing</link>
</seealso>
</element>

<element name="TCustomAbstractGroupedEdit.OnBuddyClick">
<short>Event handler signalled when the Buddy control is clicked.</short>
<descr/>
<seealso/>
</element>

<element name="TCustomAbstractGroupedEdit.Create">
<short>Constructor for the class instance.</short>
<descr>
<p>
<var>Create</var> is the overridden constructor for the class instance. 
Create allocates resources needed for the <var>BaseEditor</var> and 
<var>Buddy</var> properties prior to calling the inherited constructor. The 
default values for properties and event handlers are assigned in the 
constructor, including those needed in the BaseEditor and Buddy properties.
</p>
<p>
The Buddy control is aligned to the right edge of the current class instance.
</p>
<p>
BaseEditor is aligned to the remaining client area in the control. Event 
handlers in BaseEditor are set to the internal methods used to redirect mouse 
and keyboard events for the current class instance.
</p>
<p>
Both Buddy and BaseEditor use the current class instance in their 
<var>Parent</var> properties.
</p>
</descr>
<seealso/>
</element>
<element name="TCustomAbstractGroupedEdit.Create.AOwner">
<short>Owner of the class instance.</short>
</element>

<element name="TCustomAbstractGroupedEdit.Destroy">
<short>Destructor for the class instance.</short>
<descr>
<p>
<var>Destroy</var> is the overridden destructor for the class instance. 
Destroy calls the inherited destructor.
</p>
<remark>
Resources allocated for BaseEditor and Buddy in the constructor are not 
explicitly freed in the destructor; that action is performed using the 
Notification that occurs when this class instance (which is the owner for 
those resources) is freed.
</remark>
</descr>
<seealso/>
</element>

<element name="TCustomAbstractGroupedEdit.SetFocus">
<short>Sets the focus to the editor in the control.</short>
<descr>
<p>
<var>SetFocus</var> is an overridden procedure which gives focus to the 
grouped edit control. SetFocus redirects the method call to the SetFocus 
method in the <var>BaseEditor</var> for the control.
</p>
</descr>
<seealso>
<link id="TCustomAbstractGroupedEdit.FocusAndMaybeSelectAll"/>
<link id="TCustomAbstractGroupedEdit.DoEnter"/>
</seealso>
</element>

<element name="TCustomAbstractGroupedEdit.Focused">
<short>Performs actions needed when the control receives focus.</short>
<descr>
<p>
<var>Focused</var> is an overridden <var>Boolean</var> function used to 
perform actions needed when the control receives focus. Focused calls the 
<var>Focused</var> method in the <var>BaseEditor</var> for the control.
</p>
</descr>
<seealso>
<link id="TCustomAbstractGroupedEdit.BaseEditor"/>
<link id="#lcl.controls.TWinControl.Focused">TWinControl.Focused</link>
</seealso>
</element>
<element name="TCustomAbstractGroupedEdit.Focused.Result">
<short><b>True</b> when the control has focus.</short>
</element>

<element name="TCustomAbstractGroupedEdit.Clear">
<short>Removes the text content in the control.</short>
<descr>
<p>
<var>Clear</var> is a procedure used to remove the text content in the 
control. Clear class the Clear method in <var>BaseEditor</var>.
</p>
</descr>
<seealso>
<link id="TCustomAbstractGroupedEdit.BaseEditor"/>
<link id="TCustomMaskEdit.Clear"/>
</seealso>
</element>

<element name="TCustomAbstractGroupedEdit.ClearSelection">
<short>Clears the content for the current selection in the control.</short>
<descr/>
<seealso/>
</element>

<element name="TCustomAbstractGroupedEdit.CopyToClipboard">
<short>Copies the content in the control to the clipboard.</short>
<descr/>
<seealso/>
</element>

<element name="TCustomAbstractGroupedEdit.CutToClipboard">
<short>
Copies content in the control to the clipboard, and removes it from the 
control.
</short>
<descr/>
<seealso/>
</element>

<element name="TCustomAbstractGroupedEdit.PasteFromClipboard">
<short>Pastes content into the control from the clipboard.</short>
<descr/>
<seealso/>
</element>

<element name="TCustomAbstractGroupedEdit.SelectAll">
<short>Selects all of the content in the control.</short>
<descr/>
<seealso/>
</element>

<element name="TCustomAbstractGroupedEdit.Undo">
<short>Reverses the last edit performed on the control value.</short>
<descr/>
<seealso/>
</element>

<element name="TCustomAbstractGroupedEdit.ValidateEdit">
<short>Performs actions needed to validate the value for the control.</short>
<descr>
<p>
<var>ValidateEdit</var> is a procedure used to perform actions needed to 
validate the value for the control. The method calls the ValidateEdit method 
in the <var>BaseEditor</var> member to validate its Text against the edit 
mask assigned to the property.
</p>
</descr>
<seealso>
<link id="TCustomAbstractGroupedEdit.BaseEditor"/>
<link id="TCustomMaskEdit.ValidateEdit"/>
</seealso>
</element>

<element name="TCustomAbstractGroupedEdit.AutoSize">
<short>
Allows automatic adjustment of the size for the control, according to its 
content.
</short>
<descr>
<p>
<var>AutoSize</var> is a <var>Boolean</var> property redeclared in 
<var>TCustomAbstractGroupedEdit</var> with an overridden write access 
specifiers. AutoSize allows the control to automatically adjustment its size 
to the content in the control.
</p>
<p>
The default value for the property is <b>True</b>.
</p>
</descr>
<seealso>
<link id="#lcl.controls.TControl.AutoSize">TControl.AutoSize</link>
<link id="#lcl.controls.TControl.SetAutoSize">TControl.SetAutoSize</link>
<link id="#lcl.controls.AutoSize">Using AutoSize</link>
</seealso>
</element>

<element name="TCustomAbstractGroupedEdit.AutoSizeHeightIsEditHeight">
<short>
Indicates if the height for BaseEditor is used as the height for the control 
when auto-sizing.
</short>
<descr>
<p>
<var>AutoSizeHeightIsEditHeight</var> is a <var>Boolean</var> property which 
indicates if the height for <var>BaseEditor</var> is used as the height for 
the control when auto-sizing is enabled. The default value for the property is 
<b>True</b>.
</p>
<p>
AutoSizeHeightIsEditHeight is used in the implementation of the 
<var>CalculatePreferredSize</var> method called when CanAutoSize is 
<b>True</b>.
</p>
</descr>
<seealso>
<link id="TCustomAbstractGroupedEdit.BaseEditor"/>
<link id="TCustomAbstractGroupedEdit.CalculatePreferredSize"/>
</seealso>
</element>

<element name="TCustomAbstractGroupedEdit.Alignment">
<short>Indicates the text alignment used for the control value.</short>
<descr>
<p>
<var>Alignment</var> is a <var>TAlignment</var> property which indicates the 
text alignment used for the control value in the <var>BaseEditor</var> 
control. Read and write access for the property value are redirected to the 
BaseEditor control.
</p>
<p>
The default value for the property is <var>taLeftJustify</var>. See 
<link id="#rtl.classes.TAlignment">TAlignment</link> in the RTL for more 
information about the values in the enumerated type and their meanings.
</p>
</descr>
<seealso>
<link id="TCustomAbstractGroupedEdit.BaseEditor"/>
<link id="#lcl.stdctrls.TCustomEdit.Alignment">TCustomEdit.Alignment</link>
<link id="#rtl.classes.TAlignment">TAlignment</link>
</seealso>
</element>

<element name="TCustomAbstractGroupedEdit.CanUndo">
<short>
Indicates if the Undo method can used to revert changes to the control value.
</short>
<descr/>
<seealso/>
</element>

<element name="TCustomAbstractGroupedEdit.CaretPos">
<short>Position of the editing caret in the control.</short>
<descr>
<p>
<var>CaretPos</var> is a <var>TPoint</var> property which contains the 
coordinates for the editing caret in the grouped edit control. The property 
value is read from and written to the CaretPos property in BaseEditor.
</p>
<p>
See <link id="#lcl.stdctrls.TCustomEdit.CaretPos">TCustomEdit.CaretPos</link> 
for move information about the property and its usage.
</p>
</descr>
<seealso>
<link id="TCustomAbstractGroupedEdit.BaseEditor"/>
<link id="#lcl.stdctrls.TCustomEdit.CaretPos">TCustomEdit.CaretPos</link>
</seealso>
</element>

<element name="TCustomAbstractGroupedEdit.CharCase">
<short>
Controls the case conversion used for a value entered in the control.
</short>
<descr>
<p>
<var>CharCase</var> is a <var>TEditCharCase</var> property that controls the 
case conversion used (if any) for a value entered in the control. The default 
value for the property is <var>ecNormal</var>, and indicates that no case 
conversion is used. See <link 
id="#lcl.stdctrls.TEditCharCase">TEditCharCase</link> for more information 
about the enumeration values supported for the type.
</p>
<p>
Read and write access to the property value are redirected to the 
<var>BaseEditor</var> control.
</p>
<remark>
The value in CharCase can automatically be changed to ecNormal when an edit 
mask is assigned to the control.
</remark>
</descr>
<seealso>
<link id="TCustomAbstractGroupedEdit.BaseEditor"/>
<link id="#lcl.maskedit.TMaskEdit.CharCase">TMaskEdit.CharCase</link>
<link id="#lcl.maskedit.TCustomMaskEdit.EditMask">TCustomMaskEdit.EditMask</link>
<link id="#lcl.stdctrls.TEditCharCase">TEditCharCase</link>
</seealso>
</element>

<element name="TCustomAbstractGroupedEdit.ParentColor">
<short>Indicates if the color in the Parent control is used.</short>
<descr>
<p>
<var>ParentColor</var> is a <var>Boolean</var> property which indicates if 
the <var>Color</var> from the <var>Parent</var> control is used instead the 
value assigned to the control. When this property is <b>True</b>, all changes 
to Color in the parent will also be applied to the Color in the control, 
ensuring that they both contain the same value. If the Color of the control 
is changed by the application, then ParentColor will be automatically set to 
<b>False</b>.
</p>
<p>
Read and write access to the property value are redirected to the 
<var>BaseEditor</var> control. The default value for the property is 
<b>False</b>.
</p>
<p>
Using ParentColor when the Color value is clDefault can cause problems in 
resolving the actual color value. To obtain the Color property of a control 
while taking into account clDefault and ParentColor, use the 
GetColorResolvingParent method. This method might return a non-RGB color, but 
will never return clDefault. To obtain a purely RGB result use the 
GetRGBColorResolvingParent method.
</p>
</descr>
<seealso>
</seealso>
</element>

<element name="TCustomAbstractGroupedEdit.EchoMode">
<short>
Indicates if characters entered in the control value are hidden, displayed, 
or obscured.
</short>
<descr>
<p>
<var>EchoMode</var> is a <var>TEchoMode</var> property which controls whether 
text entered using the control is displayed normally, obfuscated, or hidden. 
The property value is read from and written to the EchoMode property in the 
BaseEditor control. 
</p>
<p>
The default value for the property is emNormal, and allows EditText to be 
displayed normally without obfuscation. Use emNone is hide the value for the 
control by displaying a Space (#32) for each of the characters. Use emPassword 
to obfuscate the control value by displaying the value in PasswordChar for 
each of the characters in EditText.
</p>
</descr>
<seealso>
<link id="TCustomAbstractGroupedEdit.BaseEditor"/>
<link id="TCustomAbstractGroupedEdit.EditTExt"/>
<link id="TCustomAbstractGroupedEdit.PasswordChar"/>
<link id="#lcl.stdctrls.TCustomEdit.EchoMode">TCustomEdit.EchoMode</link>
<link id="#lcl.stdctrls.TEchoMode">TEchoMode </link>
</seealso>
</element>

<element name="TCustomAbstractGroupedEdit.HideSelection">
<short>
Hides the current text selection when the control loses focus.
</short>
<descr>
<p>
<var>HideSelection</var> is a <var>Boolean</var> property which indicates 
whether the current text selection is hidden when the control loses focus. The 
value for the property is read from and written to the HideSelection property 
in the BaseEditor control. The default value for the property is <b>False</b>, 
and causes the current text selection to be retained when the control loses 
focus.
</p>
<p>
HideSelection affects the style flags included in the creation parameters 
for the control.
</p>
<p>
Use AutoSelect to indicate whether the complete content in EditText is 
automatically selected when the controls receives focus. Use AutoSelected to 
determine whether the text selection was performed automatically, or manually 
using the SelStart / SelLength / SetSel methods.
</p>
</descr>
<seealso/>
</element>

<element name="TCustomAbstractGroupedEdit.MaxLength">
<short>
Maximum number of characters allowed in the editor for the control.
</short>
<descr>
<p>
<var>MaxLength</var> is an Integer property with the maximum number of 
characters allowed in EditText. The property value is read from and written to 
the MaxLength property in BaseEditor. The default value (0) indicates that a 
maximum length is not enforced.
</p>
<p>
Use EditMask to specify a mask that is applied to the stored value for the 
control.
</p>
<p>
In Delphi MaxLength only limits user input. The LCL actually restricts the 
maximum length of the stored text; this simplifies the implementation for 
non-Win32 widgetsets.
</p>
</descr>
<seealso/>
</element>

<element name="TCustomAbstractGroupedEdit.Modified">
<short>
Indicates if the value for the control has been changed by the user.
</short>
<descr>
<p>
<var>Modified</var> is a <var>Boolean</var> property which indicate whether 
the value for the control has been changed by the user. The property value is 
read from and written to the Modified property in the BaseEditor control. The 
value in Modified is <b>True</b> if EditText (BaseEditor.Text) was changed 
using the keyboard, or by pasting a value from the clipboard. It contains 
<b>False</b> if the value was changed in program code.
</p>
<p>
Use event handlers, like OnEditingDone or OnChange, to perform actions needed 
when the value for the control has been changed.
</p>
</descr>
<seealso>
<link id="TCustomAbstractGroupedEdit.BaseEditor"/>
<link id="TCustomAbstractGroupedEdit.EditText"/>
<link id="TCustomAbstractGroupedEdit.Text"/>
<link id="TCustomAbstractGroupedEdit.OnChange"/>
<link id="TCustomAbstractGroupedEdit.OnEditingDone"/>
</seealso>
</element>

<element name="TCustomAbstractGroupedEdit.NumbersOnly">
<short>
Indicates if the edit control accepts numeric values only. 
</short>
<descr>
<p>
<var>NumbersOnly</var> is a <var>Boolean</var> property which indicates 
whether the Text for the control is limited to characters which represent 
numeric digits. The default value for the property is False, and allows any 
character valid for the type to be entered. When set to <b>True</b>, only the 
characters '0'..'9' are accepted in Text. '+', '-', ',', and '.' are not 
numeric digits.
</p>
<p>
The value for the property is read from and written to the NumbersOnly in the 
BaseEditor for the control (TGEEdit/TCustomMaskEdit).
</p>
<p>
NumbersOnly is not supported on all platform for the LCL; GTK 2 does not 
support the property. 
</p>
<p>
Versions of Windows prior to Windows 95 did not enforce the ES_NUMBER style 
flag. It could be specified, but still allowed any value to be manually 
entered into the edit control. Some version of Windows allowed copy (Ctrl+C) 
and paste (Ctrl+V) to be used to insert non-numeric values - even when 
NumbersOnly is set to True. 
</p>
</descr>
<seealso>
<link id="TGEEdit"/>
<link id="#lcl.stdctrls.TCustomEdit.NumbersOnly">TCustomEdit.NumbersOnly</link>
</seealso>
</element>

<element name="TCustomAbstractGroupedEdit.PasswordChar">
<short>
Contains the character displayed to obfuscate the text on the control when a 
value is entered or displayed.
</short>
<descr/>
<seealso>
<link id="TCustomAbstractGroupedEdit.BaseEditor"/>
<link id="TCustomAbstractGroupedEdit.EchoMode"/>
<link id="TCustomAbstractGroupedEdit.EditText"/>
</seealso>
</element>

<element name="TCustomAbstractGroupedEdit.PopupMenu">
<short>PopupMenu for the control.</short>
<descr>
<p>
<var>PopupMenu</var> is a <var>TPopupMenu</var> property with the context menu 
used for the BaseEditor in the grouped edit control. Read and write access for 
the property value are redirected to the PopupMenu property in BaseEditor.
</p>
<p>
When a new value is assigned to PopupMenu, the context menu is also assigned to 
the Buddy control if it currently shares the same menu instance. Buddy is not 
updated if BaseEditor and Buddy use different pop-up menus.
</p>
</descr>
<version>
Modified in LCL 3.0 to update the pop-up menu in Buddy when needed.
</version>
<seealso>
<link id="TCustomAbstractGroupedEdit.BaseEditor"/>
<link id="TCustomAbstractGroupedEdit.Buddy"/>
<link id="#lcl.stdctrls.TCustomEdit.PopupMenu">TCustomEdit.PopupMenu</link>
<link id="#lcl.controls.TControl.PopupMenu">TControl.PopupMenu</link>
</seealso>
</element>

<element name="TCustomAbstractGroupedEdit.ReadOnly">
<short>
Indicates whether the value for the control can be changed.
</short>
<descr/>
<seealso>
<link id="TCustomAbstractGroupedEdit.BaseEditor"/>
<link id="TCustomAbstractGroupedEdit.Buddy"/>
<link id="TCustomAbstractGroupedEdit.DirectInput"/>
</seealso>
</element>

<element name="TCustomAbstractGroupedEdit.SelLength">
<short>Number of characters in the current selection for the control.</short>
<descr/>
<seealso/>
</element>

<element name="TCustomAbstractGroupedEdit.SelStart">
<short>Starting position for the current selection in the control.</short>
<descr/>
<seealso>
<link id="TCustomAbstractGroupedEdit.BaseEditor"/>
<link id="TCustomAbstractGroupedEdit.SelLength"/>
<link id="TCustomAbstractGroupedEdit.SelText"/>
</seealso>
</element>

<element name="TCustomAbstractGroupedEdit.SelText">
<short>Returns the selected text in the control.</short>
<descr>
<p>
<var>GetSelText</var> is a <var>String</var> function used to get the 
selected text in the grouped edit control. Read and write access to the 
property are redirected to the <var>BaseEdit</var> property.
</p>
</descr>
<seealso>
<link id="TCustomAbstractGroupedEdit.BaseEditor"/>
<link id="TCustomAbstractGroupedEdit.SelStart"/>
<link id="TCustomAbstractGroupedEdit.SelLength"/>
<link id="#lcl.stdctrls.TCustomEdit.SelText">TCustomEdit.SelText</link>
</seealso>
</element>

<element name="TCustomAbstractGroupedEdit.TabStop">
<short>Indicates if the control can be reached using Tab navigation.</short>
<descr>
<p>
<var>TabStop</var> is a <var>Boolean</var> property which indicates if the 
control can be accessed using Tab or Shift+Tab keyboard navigation. Read and 
write access to the property value is redirected to the <var>BaseEditor</var> 
property.
</p>
</descr>
<seealso>
<link id="TCustomAbstractGroupedEdit.BaseEditor"/>
<link id="#lcl.controls.TWinControl.TabStop">TWinControl.TabStop</link>
</seealso>
</element>

<element name="TCustomAbstractGroupedEdit.Text" link="#lcl.controls.TControl.Text"/>

<element name="TCustomAbstractGroupedEdit.TextHint">
<short>
Default hint text shown when the Text property is empty for the grouped edit 
control.
</short>
<descr>
<p>
<var>TextHint</var> is a <var>TTranslateString</var> property which contains 
the inline hint text displayed for the control. It is displayed in the 
editable area for the <var>TCustomEdit</var> when the Text property is empty. 
Some platforms may refer to this feature as a "placeholder" or "editing hint". 
The value in TextHint is normally displayed using the color in clGrayText.
</p>
<p>
The display behavior for TextHint is platform-specific. On some platforms, the 
text hint is displayed any time the value in Text is empty. For others, it is 
displayed only when the control does not have focus.
</p>
<p>
Read and write access to the property value are redirected to the 
<var>BaseEditor</var> property. Setting a new value in TextHint causes the 
widgetset class to be notified, and the value is displayed in the edit control 
when allowed. If the new property value is an empty string (''), the text hint 
is removed from the control.
</p>
<p>
For platforms that do not provide native support for TextHint, an emulated 
text hint is displayed. This is a TCustomEdit control created to enable the 
feature, and can be displayed only when the original control does not have 
focus.
</p>
<p>
TextHint is different than Hint, which displays a balloon tip when ShowHint is 
set to <b>True</b> and the mouse is over the control.
</p>
</descr>
<seealso>
<link id="TCustomAbstractGroupedEdit.BaseEditor"/>
<link id="TCustomAbstractGroupedEdit.Text"/>
<link id="#lcl.stdctrls.TCustomEdit.TextHint">TCustomEdit.TextHint</link>
<link id="#lcl.stdctrls.TCustomEdit.CanShowEmulatedTextHint">TCustomEdit.CanShowEmulatedTextHint</link>
<link id="#lcl.controls.TControl.Text">TControl.Text</link>
<link id="#lcl.controls.TControl.Hint">TControl.Hint</link>
</seealso>
</element>

<element name="TCustomAbstractGroupedEdit.OnChange">
<short>
Event handler signalled when the value for the control is changed.
</short>
<descr>
<p>
<var>OnChange</var> is a <var>TNotifyEvent</var> property that contains the 
event handler signalled when the value for the control is changed. OnChange 
is triggered from the <var>EditChange</var> method called when the 
<var>BaseEditor</var> control has modified its value.
</p>
</descr>
<seealso>
<link id="TCustomAbstractGroupedEdit.BaseEditor"/>
<link id="TCustomAbstractGroupedEdit.EditChange"/>
</seealso>
</element>

<element name="TCustomAbstractGroupedEdit.OnClick" link="#lcl.controls.TControl.OnClick"/>
<element name="TCustomAbstractGroupedEdit.OnContextPopup" link="#lcl.controls.TControl.OnContextPopup"/>
<element name="TCustomAbstractGroupedEdit.OnDblClick" link="#lcl.controls.TControl.OnDblClick"/>
<element name="TCustomAbstractGroupedEdit.OnDragDrop" link="#lcl.controls.TControl.OnDragDrop"/>
<element name="TCustomAbstractGroupedEdit.OnDragOver" link="#lcl.controls.TControl.OnDragOver"/>
<element name="TCustomAbstractGroupedEdit.OnEditingDone" link="#lcl.controls.TControl.OnEditingDone"/>
<element name="TCustomAbstractGroupedEdit.OnEndDrag" link="#lcl.controls.TControl.OnEndDrag"/>
<element name="TCustomAbstractGroupedEdit.OnEnter" link="#lcl.controls.TWinControl.OnEnter"/>
<element name="TCustomAbstractGroupedEdit.OnExit" link="#lcl.controls.TWinControl.OnExit"/>
<element name="TCustomAbstractGroupedEdit.OnKeyPress" link="#lcl.controls.TWinControl.OnKeyPress"/>
<element name="TCustomAbstractGroupedEdit.OnKeyDown" link="#lcl.controls.TWinControl.OnKeyDown"/>
<element name="TCustomAbstractGroupedEdit.OnKeyUp" link="#lcl.controls.TWinControl.OnKeyUp"/>
<element name="TCustomAbstractGroupedEdit.OnMouseEnter" link="#lcl.controls.TControl.OnMouseEnter"/>
<element name="TCustomAbstractGroupedEdit.OnMouseLeave" link="#lcl.controls.TControl.OnMouseLeave"/>
<element name="TCustomAbstractGroupedEdit.OnMouseMove" link="#lcl.controls.TControl.OnMouseMove"/>
<element name="TCustomAbstractGroupedEdit.OnMouseWheel" link="#lcl.controls.TControl.OnMouseWheel"/>
<element name="TCustomAbstractGroupedEdit.OnMouseWheelUp" link="#lcl.controls.TControl.OnMouseWheelUp"/>
<element name="TCustomAbstractGroupedEdit.OnMouseWheelDown" link="#lcl.controls.TControl.OnMouseWheelDown"/>
<element name="TCustomAbstractGroupedEdit.OnMouseDown" link="#lcl.controls.TControl.OnMouseDown"/>
<element name="TCustomAbstractGroupedEdit.OnMouseUp" link="#lcl.controls.TControl.OnMouseUp"/>
<element name="TCustomAbstractGroupedEdit.OnStartDrag" link="#lcl.controls.TControl.OnStartDrag"/>

<element name="TCustomAbstractGroupedEdit.OnUtf8KeyPress">
<short>
Event handler signalled for UTF-8 key press events.
</short>
<descr>
<p>
<var>OnUTF8KeyPress</var> uses the <var>InternalOnEditUtf8KeyPress</var> 
method as the default event handler for the control, as assigned in the 
<var>Create</var> constructor.
</p>
</descr>
<seealso>
<link id="#lcl.controls.TWinControl.OnUTF8KeyPress">TWinControl.OnUTF8KeyPress</link>
</seealso>
</element>

<element name="TAbstractGroupedEdit" link="#lcl.groupededit.TCustomAbstractGroupedEdit"/>
<element name="TAbstractGroupedEdit.AutoSelected" link="#lcl.groupededit.TCustomAbstractGroupedEdit.AutoSelected"/>
<element name="TAbstractGroupedEdit.NumbersOnly" link="#lcl.groupededit.TCustomAbstractGroupedEdit.NumbersOnly"/>
<element name="TAbstractGroupedEdit.Action" link="#lcl.controls.TControl.Action"/>
<element name="TAbstractGroupedEdit.AutoSelect" link="#lcl.groupededit.TCustomAbstractGroupedEdit.AutoSelect"/>
<element name="TAbstractGroupedEdit.AutoSizeHeightIsEditHeight" link="#lcl.groupededit.TCustomAbstractGroupedEdit.AutoSizeHeightIsEditHeight"/>
<element name="TAbstractGroupedEdit.AutoSize" link="#lcl.groupededit.TCustomAbstractGroupedEdit.AutoSize"/>
<element name="TAbstractGroupedEdit.Align" link="#lcl.controls.TControl.Align"/>
<element name="TAbstractGroupedEdit.Alignment" link="#lcl.groupededit.TCustomAbstractGroupedEdit.Alignment"/>
<element name="TAbstractGroupedEdit.Anchors" link="#lcl.controls.TControl.Anchors"/>
<element name="TAbstractGroupedEdit.BiDiMode" link="#lcl.controls.TControl.BiDiMode"/>
<element name="TAbstractGroupedEdit.BorderSpacing" link="#lcl.controls.TControl.BorderSpacing"/>
<element name="TAbstractGroupedEdit.BorderStyle" link="#lcl.controls.TWinControl.BorderStyle"/>
<element name="TAbstractGroupedEdit.BuddyCaption" link="#lcl.groupededit.TCustomAbstractGroupedEdit.BuddyCaption"/>
<element name="TAbstractGroupedEdit.BuddyCursor" link="#lcl.groupededit.TCustomAbstractGroupedEdit.BuddyCursor"/>
<element name="TAbstractGroupedEdit.BuddyHint" link="#lcl.groupededit.TCustomAbstractGroupedEdit.BuddyHint"/>
<element name="TAbstractGroupedEdit.BuddyWidth" link="#lcl.groupededit.TCustomAbstractGroupedEdit.BuddyWidth"/>
<element name="TAbstractGroupedEdit.CharCase" link="#lcl.groupededit.TCustomAbstractGroupedEdit.CharCase"/>
<element name="TAbstractGroupedEdit.Color" link="#lcl.groupededit.TCustomAbstractGroupedEdit.Color"/>
<element name="TAbstractGroupedEdit.Constraints" link="#lcl.controls.TControl.Constraints"/>
<element name="TAbstractGroupedEdit.Cursor" link="#lcl.controls.TControl.Cursor"/>
<element name="TAbstractGroupedEdit.DirectInput" link="#lcl.groupededit.TCustomAbstractGroupedEdit.DirectInput"/>
<element name="TAbstractGroupedEdit.EchoMode" link="#lcl.groupededit.TCustomAbstractGroupedEdit.EchoMode"/>
<element name="TAbstractGroupedEdit.Enabled" link="#lcl.controls.TControl.Enabled"/>
<element name="TAbstractGroupedEdit.FocusOnBuddyClick" link="#lcl.groupededit.TCustomAbstractGroupedEdit.FocusOnBuddyClick"/>
<element name="TAbstractGroupedEdit.Font" link="#lcl.controls.TControl.Font"/>
<element name="TAbstractGroupedEdit.Hint" link="#lcl.controls.TControl.Hint"/>
<element name="TAbstractGroupedEdit.Layout" link="#lcl.groupededit.TCustomAbstractGroupedEdit.Layout"/>
<element name="TAbstractGroupedEdit.MaxLength" link="#lcl.groupededit.TCustomAbstractGroupedEdit.MaxLength"/>
<element name="TAbstractGroupedEdit.OnChange" link="#lcl.groupededit.TCustomAbstractGroupedEdit.OnChange"/>
<element name="TAbstractGroupedEdit.OnClick" link="#lcl.controls.TControl.OnClick"/>
<element name="TAbstractGroupedEdit.OnDblClick" link="#lcl.controls.TControl.OnDblClick"/>
<element name="TAbstractGroupedEdit.OnDragDrop" link="#lcl.controls.TControl.OnDragDrop"/>
<element name="TAbstractGroupedEdit.OnDragOver" link="#lcl.controls.TControl.OnDragOver"/>
<element name="TAbstractGroupedEdit.OnContextPopup" link="#lcl.controls.TControl.OnContextPopup"/>
<element name="TAbstractGroupedEdit.OnEditingDone" link="#lcl.controls.TControl.OnEditingDone"/>
<element name="TAbstractGroupedEdit.OnEndDrag" link="#lcl.controls.TControl.OnEndDrag"/>
<element name="TAbstractGroupedEdit.OnEnter" link="#lcl.controls.TWinControl.OnEnter"/>
<element name="TAbstractGroupedEdit.OnExit" link="#lcl.controls.TWinControl.OnExit"/>
<element name="TAbstractGroupedEdit.OnKeyDown" link="#lcl.controls.TWinControl.OnKeyDown"/>
<element name="TAbstractGroupedEdit.OnKeyPress" link="#lcl.controls.TWinControl.OnKeyPress"/>
<element name="TAbstractGroupedEdit.OnKeyUp" link="#lcl.controls.TWinControl.OnKeyUp"/>
<element name="TAbstractGroupedEdit.OnMouseDown" link="#lcl.controls.TControl.OnMouseDown"/>
<element name="TAbstractGroupedEdit.OnMouseEnter" link="#lcl.controls.TControl.OnMouseEnter"/>
<element name="TAbstractGroupedEdit.OnMouseLeave" link="#lcl.controls.TControl.OnMouseLeave"/>
<element name="TAbstractGroupedEdit.OnMouseMove" link="#lcl.controls.TControl.OnMouseMove"/>
<element name="TAbstractGroupedEdit.OnMouseUp" link="#lcl.controls.TControl.OnMouseUp"/>
<element name="TAbstractGroupedEdit.OnMouseWheel" link="#lcl.controls.TControl.OnMouseWheel"/>
<element name="TAbstractGroupedEdit.OnMouseWheelDown" link="#lcl.controls.TControl.OnMouseWheelDown"/>
<element name="TAbstractGroupedEdit.OnMouseWheelUp" link="#lcl.controls.TControl.OnMouseWheelUp"/>
<element name="TAbstractGroupedEdit.OnStartDrag" link="#lcl.controls.TControl.OnStartDrag"/>
<element name="TAbstractGroupedEdit.OnUTF8KeyPress" link="#lcl.controls.TWinControl.OnUTF8KeyPress"/>
<element name="TAbstractGroupedEdit.ParentBiDiMode" link="#lcl.controls.TControl.ParentBiDiMode"/>
<element name="TAbstractGroupedEdit.ParentColor" link="#lcl.controls.TControl.ParentColor"/>
<element name="TAbstractGroupedEdit.ParentFont" link="#lcl.controls.TControl.ParentFont"/>
<element name="TAbstractGroupedEdit.ParentShowHint" link="#lcl.controls.TControl.ParentShowHint"/>
<element name="TAbstractGroupedEdit.PasswordChar" link="#lcl.groupededit.TCustomAbstractGroupedEdit.PasswordChar"/>
<element name="TAbstractGroupedEdit.PopupMenu" link="#lcl.groupededit.TCustomAbstractGroupedEdit.PopupMenu"/>
<element name="TAbstractGroupedEdit.ReadOnly" link="#lcl.groupededit.TCustomAbstractGroupedEdit.ReadOnly"/>
<element name="TAbstractGroupedEdit.ShowHint" link="#lcl.controls.TControl.ShowHint"/>
<element name="TAbstractGroupedEdit.Spacing" link="#lcl.groupededit.TCustomAbstractGroupedEdit.Spacing"/>
<element name="TAbstractGroupedEdit.TabOrder" link="#lcl.controls.TWinControl.TabOrder"/>
<element name="TAbstractGroupedEdit.TabStop" link="#lcl.controls.TWinControl.TabStop"/>
<element name="TAbstractGroupedEdit.Text" link="#lcl.controls.TControl.Text"/>
<element name="TAbstractGroupedEdit.TextHint" link="#lcl.groupededit.TCustomAbstractGroupedEdit.TextHint"/>
<element name="TAbstractGroupedEdit.Visible" link="#lcl.controls.TControl.Visible"/>

</module>
<!-- GroupedEdit -->
</package>
</fpdoc-descriptions>
