From 14636b8c388c395600f3bed6cb33cf90f0e565f9 Mon Sep 17 00:00:00 2001 From: juha Date: Tue, 9 Mar 2021 14:06:40 +0000 Subject: [PATCH] Docs: Documentation updates for LazUtils and LCL, especially ComCtrls. Issue #38597, patch from Don Siders. git-svn-id: trunk@64771 - --- docs/xml/lazutils/lazstringutils.xml | 170 +- docs/xml/lazutils/lconvencoding.xml | 13 +- docs/xml/lazutils/masks.xml | 47 +- docs/xml/lcl/colorbox.xml | 1 - docs/xml/lcl/comctrls.xml | 5147 ++++++++++++++++---------- docs/xml/lcl/forms.xml | 7 +- docs/xml/lcl/maskedit.xml | 591 +-- docs/xml/lcl/shellctrls.xml | 103 +- 8 files changed, 3787 insertions(+), 2292 deletions(-) diff --git a/docs/xml/lazutils/lazstringutils.xml b/docs/xml/lazutils/lazstringutils.xml index 5950e738df..15e6871510 100644 --- a/docs/xml/lazutils/lazstringutils.xml +++ b/docs/xml/lazutils/lazstringutils.xml @@ -80,6 +80,118 @@ + + Determines if a string starts wih the specified value + +

+ LazStartsStr is a Boolean function used to determine if the string in AText starts wih the text specified in ASubText. It is a modified version of StartsStr from the RTL strutils.pp unit. +

+

+ LazStartsStr casts the values in ASubText and AText to PChar types, and calls StrLComp to perform the comparison. +

+

+ The returns value is True when AText begins with the specified sub-text. It also returns True when ASubText is an empty string (''), which is Delphi compatible. +

+
+ + + + +
+ + True when the string starts with the specified sub-text + + + Value to look for at the start of the text + + + Text examined in the routine + + + + Determines if a string ends wih the specified value + +

+ LazEndsStr is a Boolean function used to determine if the string in AText ends wih the text specified in ASubText. It is a modified version of EndsStr from the RTL strutils.pp unit. +

+

+ LazEndsStr casts the values in ASubText and AText to PChar types, and calls StrLComp to perform the comparison. +

+

+ The returns value is True when AText ends with the specified sub-text. It also returns True when ASubText is an empty string (''), which is Delphi compatible. +

+
+ + + + +
+ + True when the string ends with the specified value + + + Text to look for at the end of the string + + + String examined in the routine + + + + Determines if a string occurs at the beginning of the specified text + +

+ LazStartsText is a fast implementation of StartsText. The version in the RTL strutils.pp unit calls AnsiCompareText and is very slow. +

+

+ LazStartsText casts the values in ASubText and AText to PChar types, and calls StrLIComp to perform a case-insensitive comparison for the number of characters in ASubText. +

+

+ The return value is True when ASubText and AText start with the same values. The return value is also True when ASubText is an empty string (''); this is Delphi compatible. The return value is False when StrLIComp returns a non-zero value. +

+
+ + StartsText + StrLIComp + +
+ + True when the sub-text is at the start of the string value + + + Value to locate at the start of the string + + + String value used in the comparison + + + + Determines if a string occurs at the end of the specified text + +

+ LazEndsText is a fast implementation of EndsText. The version in the RTL strutils.pp unit calls AnsiCompareText and is very slow. +

+

+ LazEndsText casts the values in ASubText and AText to PChar types, and calls StrLIComp to perform a case-insensitive comparison for the number of characters in ASubText at the end of the value in AText. +

+

+ The return value is True when AText ends with the value in ASubText. The return value is True when ASubText is an empty string (''); this is Delphi compatible. It is False when StrLIComp returns a non-zero value, or when ASubText is longer than AText. +

+
+ + EndsText + StrLIComp + +
+ + True when the sub-text is at the end of the string value + + + Value to locate at the end of the string + + + String value used in the comparison + + A case-insensitive optimized version of the Pos routine @@ -114,62 +226,6 @@ Value searched for the specified sub-string - - Determines if a string occurs at the beginning of the specified text - -

- LazStartsText is a fast implementation of StartsText. The version in the RTL strutils.pp unit calls AnsiCompareText and is very slow. -

-

- LazStartsText calls StrLIComp to perform a case-insensitive comparison between ASubText and AText for the number of characters in ASubText. -

-

- The return value is True when ASubText and AText start with the same values. It is False when StrLIComp returns a non-zero value, when ASubText is an empty string, or when ASubText is longer than AText. -

-
- - StartsText - StrLIComp - -
- - True when the sub-text is at the start of the string value - - - Value to locate at the start of the string - - - String value used in the comparison - - - - Determines if a string occurs at the end of the specified text - -

- LazEndsText is a fast implementation of EndsText. The version in the RTL strutils.pp unit calls AnsiCompareText and is very slow. -

-

- LazEndsText calls StrLIComp to perform a case-insensitive comparison between ASubText and AText for the number of characters in ASubText at the end of the value in AText. -

-

- The return value is True when AText ends with the value in ASubText. It is False when StrLIComp returns a non-zero value, when ASubText is an empty string, or when ASubText is longer than AText. -

-
- - EndsText - StrLIComp - -
- - True when the sub-text is at the end of the string value - - - Value to locate at the end of the string - - - String value used in the comparison - - True when characters in S are in the range '0'..'9' @@ -441,7 +497,7 @@

BeautifyLineXY is a String function used to combine the values in the Filename, Line, X and Y arguments into a formatted message. The message is in the form:

-examplefile.pas (123, 1) The error message goes here. +
examplefile.pas (123, 1) The error message goes here.

Filename contains a file name used at the start of the formatted message.

diff --git a/docs/xml/lazutils/lconvencoding.xml b/docs/xml/lazutils/lconvencoding.xml index 6e1e3af7be..4c87929545 100644 --- a/docs/xml/lazutils/lconvencoding.xml +++ b/docs/xml/lazutils/lconvencoding.xml @@ -404,14 +404,21 @@ Removes the UTF-8 BOM from the UTF-8 encoded value - + +

+ The return value is the value in s after removing the Byte Order Mark in UTF8BOM from the start of the string. The return value is the same as the value in s when UTF8BOM is not found in the string. +

+

+ No actions are performed in the routine when s is an empty string (''). The return value is also an empty string. +

+
- + Value after removing the UTF-8 BOM - + UTF-8-encoded value examined in the routine diff --git a/docs/xml/lazutils/masks.xml b/docs/xml/lazutils/masks.xml index aabb095c7d..4a943158b8 100644 --- a/docs/xml/lazutils/masks.xml +++ b/docs/xml/lazutils/masks.xml @@ -70,8 +70,26 @@ + + + Exception raised for an invalid character in TMask + +

+ EMaskError is a EConvertError descendant representing the exception raised when an invalid character is found in a value passed to the TMask.Create constructor. +

+

+ Mask specifications in TMask are limited to the single-byte code points in the UTF-8 character set. EMaskError is raised when a value with a muti-byte code point is encountered. +

+
+ + + EConvertError + lrsInvalidCharSet + +
+ - Represent details for mask character types in the TMaskCharType enumeration + Represents details for mask character types in the TMaskCharType enumeration

TMaskChar is a variant record type with members used to represent details for mask character types in the TMaskCharType enumeration. TMaskChar is used to implement the Chars member in the TMaskString record type. @@ -131,20 +149,21 @@ + The TMask class represents a mask and performs comparisons

- A mask is a comparison pattern built using wildcards, sets and/or literal characters. + A mask is a comparison pattern built using wildcards, sets and/or literal characters. The mask is limited to the single-byte code points in the UTF-8 encoding. Using multi-byte code points in TMask causes an EMaskError exception to be raised.

Each literal character must match a single character in the string. Case sensitivity requires the value moCaseSensitive in the options passed to the constructor.

- A set starts with "[" and ends with "]". Each element of a set is a literal character and or a range. A range is defined as first-last literal character. One character of a set must match a single character in the string. A set [!...] matches if the character is not in the set. The option value moDisableSets passed to the constructor disables set processing. + A set starts with "[" and ends with "]". Each element of a set is a literal character and or a range. A range is defined as a first-to-last literal character string. One character of a set must match a single character in the string. A set [!...] matches if the character is not in the set. The option value moDisableSets passed to the constructor disables set processing.

- Wildcards are the * and ? characters. An asterisk matches any number of characters. A question mark matches a single character. + Wildcards are the * and ? characters. An asterisk matches any number of characters. A question mark matches a single character.

For example: 'Hello world' matches to the mask 'H?ll[xoy] w*d'. @@ -152,8 +171,22 @@ + + + + + + + + Initializes the internal TMaskString instance used in the class + + + + Frees resources allocated in the internal TMaskString instance + + Constructor for the class instance @@ -161,7 +194,7 @@ Create is the overloaded constructor for the class instance. Overloaded variants are provided with parameter values that are used to configure the class instance.

- AValue contain the mask value compared to a given file name in the method for the class. + AValue contains the pattern compared to a given file name in methods for the class. While defined as a String type, AValue is limited to the single-byte code points in the UTF-8 encoding. Using a multi-byte UTF-8 code point in AValue causes an EMaskError exception to be raised.

Each UTF-8 code point in AValue is examined, and the internal TMaskString is updated to reflect how the mask character is applied. For example: @@ -183,7 +216,7 @@ AOptions contains zero or more TMaskOption values which enable or disable features in the methods for the class instance.

- Create calls the InitMaskString method to initial the internal TMaskString instance used in the class. + Create calls the private InitMaskString method to initialize the internal TMaskString instance used in the class.

The overloaded variant which does not have an AOptions parameter has been deprecated. It will be removed in a future Lazarus version. @@ -193,6 +226,8 @@ + + lrsInvalidCharSet
diff --git a/docs/xml/lcl/colorbox.xml b/docs/xml/lcl/colorbox.xml index d4d501f90d..06b4398a66 100644 --- a/docs/xml/lcl/colorbox.xml +++ b/docs/xml/lcl/colorbox.xml @@ -29,7 +29,6 @@ - diff --git a/docs/xml/lcl/comctrls.xml b/docs/xml/lcl/comctrls.xml index a2d12429dd..011bd438bb 100644 --- a/docs/xml/lcl/comctrls.xml +++ b/docs/xml/lcl/comctrls.xml @@ -13,7 +13,10 @@ comctrls.pp contains classes and types like those found in the Delphi comctrls unit.

- Components on the Common Controls Tab + The following components are added to the Lazarus IDE: +

+

+ Common Controls Tab

  • TTrackbar
  • @@ -28,9 +31,16 @@
  • TTabControl
  • THeaderControl
+

+ The following components are added but not displayed on the component palette: +

+
    +
  • TToolButton
  • +
  • TTabSheet
  • +
- + @@ -141,7 +151,9 @@ Enumerated type with the bevel styles used on status bar panels - TStatusPanelBevel is an enumerated type with values which represent bevel styles used on status bar panels. TStatusPanelBevel is the type used to implement the Style property in TStatusPanel. +

+ TStatusPanelBevel is an enumerated type with values which represent bevel styles used on status bar panels. TStatusPanelBevel is the type used to implement the Style property in TStatusPanel. +

@@ -282,7 +294,9 @@ Gets the value displayed as the name for the collection item - GetDisplayName is an overridden String function which returns the value displayed as the name of the collection item. The value in the Text property is used as the return value when it is not an empty string (''). Otherwise, the inherited GetDisplayName method is called to get the return value. +

+ GetDisplayName is an overridden String function which returns the value displayed as the name of the collection item. The value in the Text property is used as the return value when it is not an empty string (''). Otherwise, the inherited GetDisplayName method is called to get the return value. +

TCollectionItem.DisplayName @@ -420,7 +434,7 @@ - + Gets the value for the indexed Items property @@ -435,7 +449,7 @@ Ordinal position for the requested collection item - + Sets the value in the indexed Items property @@ -460,7 +474,7 @@ - + Ensures that observers are notified when he specified collection item has been changed @@ -484,7 +498,7 @@ The control where the status panel is displayed - + Adds a new TStatusPanel instance to the collection @@ -500,7 +514,7 @@ Status panel added in the method - + Provides indexed access to the TStatusPanel items in the collection @@ -591,7 +605,9 @@ Sets the value for the SimpleText property - Notifies the widgetset class of the value change when a handle has been allocated and SimplePanel is set to True. +

+ Notifies the widgetset class of the value change when a handle has been allocated and SimplePanel is set to True. +

@@ -624,8 +640,8 @@ New value for the property
- - + + @@ -748,10 +764,10 @@ - + Panel to draw in the method - + Display rectangle for the drawing operation @@ -912,9 +928,9 @@ - - - + + + @@ -926,16 +942,16 @@ TStatusBar default is True - - - - - - - - - - + + + + + + + + + + Collection with the TStatusPanel instances defined for the control @@ -949,12 +965,12 @@
- - - - + + + + - + @@ -968,13 +984,14 @@ - SimplePanel - boolean. Is there just one continuous panel or several sub-panels? + Indicates if a single panel is displayed in the status bar with the text in SimpleText +

- SimplePanel - boolean. Is there just one continuous panel or several sub-panels? + SimplePanel is a Boolean property which indicates if a single panel is displayed in the status bar with the text in SimpleText

- If true, the value of SimpleText is displayed; if false, the contents of Panels is displayed. + If True, the value of SimpleText is displayed; if False, the contents of the individual Panels is displayed.

Contents can be adjusted with a stringlist editor that pops up when the ellipsis (...) next to Panels is selected and allows insertion of an arbitrary number of sub-panels with their own strings. @@ -983,12 +1000,30 @@ - - SizeGrip - an area at the bottom of the statusbar where a mouse can grip to change the size: True if this is working - + DIsplays a sizing grip used to resize the parent form + +

+ SizeGrip is a Boolean property which indicates if a sizing grip (or grabber) is visible for the status bar. The sizing grip is a triangular shape displayed at the bottom-right of the status bar, and provides an alternate way to resize the parent form using the mouse. It presents a larger mouse target than a window border. +

+

+ The default value for the property is True, and indicates that the sizing grip is visible. +

+

+ Setting a new value for the property causes the widgetset class to be notified of the change if the handle has been allocated for the control. +

+

+ Use SizingGripEnabled to determine if the sizing grip is enabled in the control. +

+
+ + + + TCustomForm.BorderStyle + TControl.Parent +
- + Indicates the System font is used for the control @@ -998,9 +1033,9 @@ - - - + + + @@ -1013,9 +1048,9 @@ - - - + + + Event handler signalled to draw a panel in the status bar @@ -1027,8 +1062,8 @@ - - + + Event handler for showing a hint when required @@ -1036,17 +1071,17 @@ - - - - - - - - - - - + + + + + + + + + + + @@ -1107,7 +1142,9 @@ Sets the value for the ImageIndex property - Notifies the widgetset class of changes to properties in the custom page. +

+ Notifies the widgetset class of changes to properties in the custom page. +

@@ -1134,16 +1171,22 @@
- - - - + + Handles the LM_PAINT message for the control + +

+ WMPaint is an overridden method in TCustomPage which handles the LM_PAINT message for the control. It calls the inherited method to render the control. No actions are performed in themethod if the Parent is a TCustomTabControl descendant and the class instance is not the current page in the Parent control. +

+
+ + TWinControl.WMPaint +
- + Message handled in the method - + Sets the Parent control for the custom page @@ -1167,22 +1210,38 @@ - - - - + + Handles the CM_HITTEST control message + +

+ CMHitTest checks the type for the Parent control to determine whether the Message is ignored or forwarded to the inherited method. When Parent is a TCustomTabControl descendant, the class instance must be the active page in the parent control. When it is not, the Message result is set to 0 and the message is ignored. Otherwise, the inherited method is called to handle the Messsage. +

+
+ + TControl.CMHitTest +
- + Control message handled in the method - - - - + + Handles the CM_VISIBLECHANGED message for the control + +

+ Calls the inherited method to handle a focus change and update the control state. If the control is Visible, the DoShow method is called to signal the OnShow event handler (when assigned). Otherwise, DoHide is called to signal the OnHide event handler (when assigned). +

+
+ + + + + + TWinControl.CMVisibleChanged +
- + Control message handled in the method @@ -1218,9 +1277,9 @@ Value for the property - + - Provides support for TCustomTabControl as parent when handling dialog accelerator keys + Provides support for a TCustomTabControl parent when handling a dialog accelerator key

@@ -1230,49 +1289,85 @@ - + True if message contains an accelerator key handled in the method - + Message examined in the method - - DoHide - perform the code for the OnHide event handler - - + Performs actions needed when Visible is changed to False + +

+ DoHide is a method used to perform actions needed when the Visible property is changed to False. DoHide signals the OnHide event handler (when assigned). +

+

+ DoHide is called from the CMVisibleChanged message handler. +

+
+ + + + +
- - DoShow - perform the code for the OnShow event handler - - + Performs actions needed when Visible is changed to True + +

+ DoShow is a method used to perform actions needed when Visible property is changed to True. DoShow signals the OnShow event handler (when assigned). +

+

+ DoShow is called from the CMVisibleChanged message handler. +

+
+ + + + +
- - Updates the Flags property when the handle for the control is freed - - + + Updates the Flags property when the Handle for the control is freed + +

+ DestroyHandle is an overridden method used to update the control when its Handle is freed in the widgetset class. DestroyHandle calls the inherited method on entry, and updates the Flags property to exclude the value pfAdded. +

+
+ + + + + + TWinControl.DestroyHandle + TWinControl.Handle +
- + - - + +

+ RealSetText is overridden in TCustomPage to notify the widgetset class of the value change when the Parent control is assigned and has a valid Handle. RealSetText calls the inherited method to apply the new value. AdjustSize is called if the widgetset class was notified. +

+
+ + TWinControl.RealSetText + TWinControl.Handle + TControl.AdjustSize +
- + Value used for the Text (Caption) in the control Constructor for the class instance

- Create is the overridden constructor for TCustomPage. -

-

- Create calls the inherited constructor on entry and sets the default value for the style, visibility, alignment and caption in the class instance. + Create is the overridden constructor for TCustomPage, and calls the inherited constructor on entry. Create sets the default values for the style, visibility, alignment and caption in the class instance.

@@ -1283,11 +1378,43 @@ Owner of the class instance
- - + + + +

+ Returns False in TCustomPage. +

+
+ + TWinControl.CanTab + +
+ + Always returns False + - - + + Indicates whether the control is visible + +

+ IsControlVisible is an overridden method in TCustomPage which indicates whether the control is visible. +

+

+ IsControlVisible calls the inherited method on entry to determine if the Visible property is set to True, and whether the control is visible at design-time. When the Parent control is TCustomTabControl, the value in the PageIndex property must match the value in the parent control. +

+

+ The return value is True when all of the conditions are satisfied. +

+
+ + + + TControl.IsControlVisible + +
+ + True when the control is visible + @@ -1300,11 +1427,20 @@ - VisibleIndex - returns the index number of a visible page + Gets the index number for a visible page within all of the visible pages

- Gets the ordinal position in the Parent (tab control) where the current page is displayed. Returns -1 if the page is not present in the notebook or has its TabVisible property set to False. + VisibleIndex is an Integer function used to get the ordinal position for the page instance within the list of visible pages for the Parent control. +

+

+ When Parent is a TCustomTabControl descendant, its TCustomPage instances are examined to find the current class instance. At run-time, only pages with the TabVisible property set to True are considered in the method. At design-time, all pages are examined. +

+

+ The return value is the relative position in the list of visible pages where the current class instance was found. The return value is -1 if the current page was not found in the Parent control, or when none of the pages in the Parent control are visible. +

+

+ When Parent is not derived from TCustomTabControl, the return value is always -1.

@@ -1315,10 +1451,14 @@
- Ensures that an assigned parent control is derived from TCustomTabControl - + Ensures that the specified control is derived from TCustomTabControl + +

+ Raises an EInvalidOperation exception when AParent is not derived from TCustomTabControl. Calls the inherited CheckNewParent method when AParent is unassigned or derived from TCustomTabControl. +

+
- Raises an EInvalidOperation exception when the specified AParent control is not derived from TCustomTabControl. Calls the inherited CheckNewParent method when AParent is unassigned or derived from TCustomTabControl. + Raises an EInvalidOperation exception when AParent is not derived from TCustomTabControl. @@ -1333,7 +1473,7 @@ Ordinal position for the page in the parent control

- PageIndex is an Integer property which contains the ordinal position for the page control in a Parent control. Setting a new value for the property causes the Parent control to call its MoveTab method to reorder the pages on the control. This action is performed when Parent is descended from TCustomTabControl. + PageIndex is an Integer property which contains the ordinal position for the page control in its Parent control. Setting a new value for the property causes the Parent control to call its MoveTab method to reorder the pages. This action is performed when the Parent control is descended from TCustomTabControl.

@@ -1342,30 +1482,41 @@
- Indicates if the tab in the Parent control should be visible + Indicates if the tab in the Parent control is visible

TabVisible indicates if the Tab in the Parent control is visible.

- Changing the value in the property cause the Parent control to be updated to reflect the new property value. Please note: No actions are performed when the new value for the property is the same as the existing value for the property, or at design-time. + Changing the value in the property cause the Parent control to be updated to reflect the new value. No actions are performed in the method at design-time, or when the property value is not different than the stored value.

- When the Parent control has been assigned and has a handle allocated, the TCustomTabControl in Parent is updated to reflect the new value for the property. When True, the active page in the tab control is changed to the current page instance when one has not already been assigned in the Parent control. The page and its handle are removed from the tab control when the property value is False. + When the Parent control has been assigned and has a handle allocated, the TCustomTabControl in Parent is updated to reflect the new value for the property. When True, the active page in the Parent control is changed to the current page instance if one has not already been assigned in the Parent. The page and its handle are removed from the Tab control when the property value is False.

- Use IsControlVisible to determine if the page is currently the active one displayed in the Parent tab control. + Use IsControlVisible to determine if the page is currently the active page displayed in the Parent tab control.

- - ImageIndex - integer index value for the image associated with this page + Ordinal position for the image associated with the page + +

+ ImageIndex contains the ordinal position in an image list for the image associated with the page instance. The default value for the property is -1 and indicates that an image has not been assigned for the page. The image list is a property available in the Parent control. +

+

+ Changing the value for the property causes the widgetset class to be notified using its UpdateTabProperties method. +

+

+ No actions are performed in the method during LCL component streaming, or when the Handle for the control has not been allocated. +

+
+
- + The value for the Left property is not stored in the LCL component streaming mechanism for TCustomPage. @@ -1373,7 +1524,7 @@ - + The value for the Top property is not stored in the LCL component streaming mechanism for TCustomPage. @@ -1381,7 +1532,7 @@ - + The value for the Width property is not stored in the LCL component streaming mechanism for TCustomPage. @@ -1389,7 +1540,7 @@ - + The value for the Height property is not stored in the LCL component streaming mechanism for TCustomPage. @@ -1397,7 +1548,7 @@ - + The value for the TabOrder property is not stored in the LCL component streaming mechanism for TCustomPage. @@ -1405,30 +1556,43 @@ - + - The value for the Visible property is not stored in the LCL component streaming mechanism for TCustomPage. +

+ The value for the Visible property is not stored in the LCL component streaming mechanism for TCustomPage. +

- - OnHide - event handler for hiding this page in a notebook - + Event handler signalled when the page is hidden + +

+ OnHide is a TNotifyEvent property with the event handler signalled when the page is hidden. OnHide is signalled from the DoHide method, and occurs when the value in the Visible property is set to False. +

+

+ Applications can implement and assign a handler routine to respond to the event notification. The Sender argument contains the TCustomPage instance for the event notification. +

+
- - OnShow - event handler for showing (making visible) this page of a notebook - + Event handler signalled when the page becomes visible + +

+ OnShow is a TNotifyEvent property with the event handler signalled when the page becomes visible. OnShow is signalled from the DoShow method, and occurs when the value in the Visible property is set to True. +

+

+ Applications can implement and assign a handler routine to respond to the event notification. The Sender argument contains the TCustomPage instance for the event notification. +

+
+
- - TCustomPageClass - class of TCustomPage - + Class reference used to create a new TCustomPage instance @@ -1506,22 +1670,33 @@
- + Class reference used to create new instances of TNBBasePages - - - + Implements a list of pages used in TCustomTabControl + +

+ TNBPages is a TNBBasePages descendant which implements a list of pages used in TCustomTabControl. +

+

+ TNBPages extends the ancestor class to include properties for the TCustomTabControl which owns the list of pages (Notebook), and the internal list used to store the TCustomPage instances (PageList). It implements the abstract virtual methods defined in the ancestor, and provides additional methods to maintain the pages in PageList. +

+
+ + + + +
- + Implements the OnChange event handler for the page list @@ -1532,40 +1707,63 @@ - - - - + + Implements read access to values for the Strings property + +

+ Read access is redirected to the PageList property. The return value contains the Caption for the TCustomPage instance stored at the specified position in PageList. +

+
+ + + +
- + Returns the Caption for the page - + Ordinal position for the requested value - + - - + +

+ GetCount is an overridden method in TNBPages, and returns the number of items stored in PageList. +

+
+ + +
- + Gets the number of pages in the class instance - + - - + +

+ GetObject is an overridden method in TNBPages, and redirects indexed object access to the PageList property. The return value is a TObject instance, and must be cast to TCustomPage to access its properties and methods. +

+

+ Use GetPage to get a page in PageList as a TCustomPage isntance. +

+
+ + + +
- + Object stored at the specified position - + Ordinal position for the object requested in the method - + @@ -1578,112 +1776,145 @@ - + Gets the position in PageList for the specified page - + Ordinal position for the page instance, or -1 when not found - + TCustomPage instance to locate in the list of pages - + Inserts a page instance at the specified position in the page list - + Ordinal position in the page list for the inserted value - + Page instance inserted into the page list - + Deletes the page stored at the specified position in the page list - + Ordinal position for the page removed from the page list - - + Gets the page stored at the specified position in PageList + +

+ GetPage implements the abstract method defined in the ancestor, and is used to get a TCustomPage instance stored at the specified position in PageList. GetPage calls the GetObject method to retrieve the page, and casts it to the TCustomPage type used in the return value. +

+
- + TCustomPage instance stored at the specified position - + Ordinal position in PageList for the requested page - - - + List with the TCustomPage instances for the class instance + +

+ PageList is a read-only TListWithEvent property which contains the TCustomPage instances for the class instance. +

+

+ PageList includes an OnChange event handler used to perform notifications when values are added, retrieved, or deleted in the list. The private PageListChange method implements the handler, and ensures that new items in the list are parented to the control in Notebook. +

+

+ Most methods in TNBPages are redirected to PageList to get or set their values. +

+
+ + TListWithEvent + TListNotification +
- + Provides a reference to the control which owns the pages - - Create - constructor for TNBPages: calls inherited Create then sets up the list of pages on the notebook - - + Constructor for the class instance + +

+ Create is the constructor for TNBPages, and calls the inherited Create method. It sets up the list of pages for the notebook (tab control). +

+
TObject.Create
- - - - + Control which owns the class instance (and its pages) - - + Destructor for the class instance + +

+ Frees and releases resources allocated to PageList. +

+
+ + + + +
+ + + Removes all pages stored in the class instance + +

+ Calls Delete until all TCustomPage instances in PageList have been removed. +

+
- - - - - - - - + + Deletes the page stored at the specified position in the page list - + Ordinal position for the page removed from the list - - - + + + Inserts a new page with the given name at the specified position in PageList + + +

+ Insert calls the GetPageClass method in NoteBook to get the class reference used to create the new page. The owner of the page instance is the NoteBook control (or its owner when assigned). The value in S is assigned as the Caption in the TCustomPage instance. The InsertPage method in NoteBook is called to store the TCustomPage instance at the position in Index. +

+
- + Ordinal position where the new page is stored - + Name (Caption) used for the new page instance - + @@ -1699,6 +1930,7 @@ + ? @@ -1786,7 +2018,7 @@ - + TTabStyle - enumerated type for tab style: normal, buttons or flat buttons @@ -1939,31 +2171,31 @@ - + Notifies the widgetset class when PageIndex has been changed - + Notifies the widgetset class when ShowTabs has been changed - + Notifies the widgetset class when TabPosition has been changed - + Notifies the widgetset class when TabSize has been changed - + Notifies the widgetset class when Images has been changed @@ -2021,17 +2253,20 @@ Locates a visible page in the tab control

- FindVisiblePage is used to locate a Page in the tab control with its TabVisible property set to True. Index specifies the ordinal position in Pages property that is the search locus. FindVisiblePage searches the Page collection in ascending order starting at the position in Index. If a visible page is not found, Page is searched in descending order starting at Index -1. + FindVisiblePage is used to locate a Page in the tab control with its TabVisible property set to True.

- The return value contains the ordinal position in Page where the visible tab was located, or -1 when there are no visible tabs in Page. + Index specifies the ordinal position in Pages property that is the search locus. FindVisiblePage searches the Page collection in ascending order starting at the position in Index. If a visible page is not found, Page is searched in descending order starting at Index -1. +

+

+ The return value contains the ordinal position in the indexed Page property where the visible tab was located, or -1 when there are no visible tabs in Page.

- Ordinal position for the page with a visible tab, or -1 when a visible tab is not found + Ordinal position for the visible page tab, or -1 when a visible tab is not found @@ -2039,16 +2274,20 @@ - - + Implements the storage specifier for the ActivePage property + +

+ Always returns False in TCustomTabControl. +

+
- + Always returns False in TCustomTabControl - Moves the specified page control to the new position in NewIndex + Moves the specified page control to the position in NewIndex @@ -2082,7 +2321,7 @@
- + Notifies the widgetset class when a page is moved in the control @@ -2233,7 +2472,7 @@ - Updates control style flags to hide or display pages in the tabbed control at design-time + Updates control style flags to hide or display pages in the control at design-time @@ -2271,9 +2510,11 @@ - Performs actions needed when the Images in the control are changed + Performs actions needed when an image list in the control is changed - Queued and executed asynchronously by the Application instance. +

+ Queued and executed asynchronously by the Application instance. +

@@ -2282,9 +2523,11 @@
- + Performs actions needed to apply the specified auto-adjust layout policy - + + TControl.DoAutoAdjustLayout + @@ -2326,40 +2569,59 @@ - + + Notifies the widgetset class when a page handle is added or removed in the control + - + Page instance with the handle added or removed - - + Handles the CN_NOTIFY message for the control + +

+ Handles TCN_SELCHANGE and TCN_SELCHANGING notification codes in Message. +

+
- + + - - - - - + + + Notifies the widgetset class of the active page when the control Handle is allocated + + +

+ Notifies the widgetset class of the value in PageIndex when the control Handle has been allocated. +

+
- - + + Performs actions needed when the active page for the control has been changed + + +

+ Performs actions needed when the active page for the control has been changed. + Signals the OnChange event handler (when assigned). + Called when a new value is assigned to PageIndex. +

+
- + @@ -2367,13 +2629,23 @@ - Change - perform the code for OnChanging + Performs actions to show or hide pages when the current page is changed - + +

+ Change is a method used to performs actions needed to show or hide pages in the tabbed control. +

+

+ Change calls ShowCurrentPage to display the page in PageIndex, and hide the previously visible page in the tabbed control. Change calls DoChange when the control is not being destroyed, or loaded in the LCL component streaming mechanism. +

+

+ Change is called from the MoveTab method, and when selection change messages are handled for the control. +

+
- + Handles page navigation using the Tab key

@@ -2399,7 +2671,7 @@ Key modifier(s) used in the method - + @@ -2408,16 +2680,16 @@ - - + + Handles an accelerator key for the active page in the tabbed control - + True if the accelerator was handled in the active page - + Message with the accelerator key examined in the method @@ -2429,7 +2701,7 @@ New value for the internal page index - + Makes the specified page object the active page in the tabbed control

@@ -2453,7 +2725,7 @@ - IndexOfTabAt returns the index value for the Tab located at the specified X and Y positions + IndexOfTabAt returns the index value for the Tab located at the specified client coordinates @@ -2472,7 +2744,7 @@ - + Gets the index for the page at the specified client coodinates @@ -2508,7 +2780,7 @@ - +

@@ -2527,16 +2799,62 @@ - - ActivePageComponent - the actual contents of the currently selected Page - + The active TCustomPage instance for the tabbed control + +

+ ActivePageComponent is a TCustomPage property which indicates the active page component for the tabbed control. +

+

+ PageIndex is used to access the page instance in Page with the property value. The property value is Nil when PageIndex contains a value that is not in the range 0..PageCount-1. +

+

+ Setting a new value for the property causes the IndexOf method to be called to locate the value in the list of pages. PageIndex is updated to reflect the position for the specified page, and may contain -1 if pages are not used in the tabbed control. +

+

+ Use ActivePage to get or set the active page in the control using its Caption. +

+
+ + + + + + +
- - ActivePage - the name (string) of the - Page that is currently selected and is available for interaction - + Caption for the active page in the tabbed control + +

+ ActivePage is a String property which holds the caption for the active page in the control. +

+

+ The property value is retrieved using values in the PageIndex and Page properties, and contains the Caption property for the TCustomPage instance. The property value is an empty string ('') if PageIndex is not in the range 0..PageCount-1. +

+

+ Setting a new value for the property causes the indexed Page property to be searched to locate the TCustomPage instance with a Caption matching Value. If a page is found with the specified caption, the SetPageIndex method is called to validate and store the PageIndex, and signal the OnChange event handler when configured in Options. No actions are performed if the new property Value is not used in Page. +

+

+ A value assigned to ActivePage at design-time is not stored in the LCL component streaming mechanism. +

+

+ Use ActivePageComponent to read or write the TCustomPage instance that is the active page in the control. +

+

+ Use Tabs to access the internal page (or tab) list for the control. +

+
+ + + + + + + + + +
@@ -2587,43 +2905,83 @@ - CanChange - returns True if the control can be changed + Signals the OnChanging event handler prior to updates to PageIndex +
- + Always returns True - DisplayRect - the rectangular area to be used for displaying information determined by the identity of the selected Tab + Rectangular area used to display information for the tabbed control - - + +

+ DisplayRect is a read-only TRect property which contains the display rectangle for the tabbed control. The property value contains the TRect instance returned from the TWinControl.GetClientRect method. +

+
+ + TWinControl.GetClientRect + TRect +
- Tabs - the actual Tabs expressed as strings - + Contains the list of pages accessible in the tabbed control +
+ +

+ Tabs is a TStrings property which contains the list of pages for the tabbed control. It is created using the class reference from GetListClass in the constructor. By default, TNBPages is used as the class type for the page list. It is stored in an internal member, and used when TCustomPage class instances for the control are accessed and maintained. +

+
- - TabIndex - index value of current Tab. If none selected, default value of -1 is returned - - - + Contains the ordinal position for the active Tab in the control + +

+ TabIndex is an Integer property which contains the ordinal position for the active Tab in the tabbed control. It is the same as the PageIndex property; they read and write the same member value. The default value for the property is -1, and indicates that an active tab (page) has not been selected in the control. +

+

+ Setting a new value for the property causes the OnChange event handler to be signalled when nboDoChangeOnSetIndex has been included in the Options for the control. The event handlre is not signalled at design-time, during LCL component streaming, or when the control is freed. +

+

+ No actions are performed in the method when the new property value is not in the range -1..PageCount-1, or when the new value is the same as the existing value. +

+
+ + + + + +
- OnChange - event handler for a change in the page + Event handler signalled when the active page (or tab) for the control is changed - - + +

+ OnChange is a TNotifyEvent property with the event handler signalled when the active page (or tab) for the control is changed. OnChange is enabled when the value nboDoChangeOnSetIndex has been included in the Options for the control. +

+

+ Setting a new value in either PageIndex or TabIndex signals the assigned and enabled event handler. It is also called from the Change method when selection change messages are handled for the control, and when a tab is re-ordered using the MoveTab method. +

+
+ + + + + + + +
@@ -2653,7 +3011,7 @@ - TabRect - the rectangle occupied by the specified Tab + Gets the client rectangle for the control adjusted to the parent (when needed) @@ -2667,16 +3025,33 @@ - GetImageIndex - find the index number of the image associated with the specified Page index + Gets the ordinal position for the image displayed on the tab for the specified page - - + +

+ GetImageIndex is an Integer function used to get the ordinal position in Images for the image displayed on the specified tab. ThePageIndex contains the Page examined in the method to get its ImageIndex property. If Page does not have a TCustomPage instance at the position in ThePageIndex, -1 is used as the image index. +

+

+ GetImageIndex signals the OnGetImageIndex event handler (when assigned) to allow a custom image index to be used in the return value. +

+

+ GetImageIndex is called from methods in the widgetset class when the image displayed on a tab is needed. +

+
+ + + + + + + +
- + Ordinal position in Images for the specified page index - + Ordinal position in Page with the image index for the tab @@ -2968,7 +3343,7 @@ - +

The default value for the property is True in TCustomTabControl. @@ -3028,7 +3403,7 @@ New value for the property - + calls inherited Create and zeroes ImageIndex @@ -3065,44 +3440,44 @@ - - - - - - - - - + + + + + + + + + - - - - - - - + + + + + + + - - - - - - - - - + + + + + + + + + - + - - - - - + + + + + - - + + @@ -3204,7 +3579,7 @@ - + @@ -3229,7 +3604,7 @@ - + Called to check whether this control allows docking and where @@ -3260,9 +3635,9 @@ - + - + @@ -3374,40 +3749,40 @@ - + - - - - - - - - - - - + + + + + + + + + + + - - - - + + + + - + - + - + - + OnChange - Occurs immediately after a tab is selected. @@ -3417,29 +3792,29 @@ - - - - - - - - - + + + + + + + + + - - - - - - - - - - - - - + + + + + + + + + + + + + @@ -3778,7 +4153,6 @@ - TODO TCustomTabControl, and fix all widgetsets @@ -3922,7 +4296,7 @@ - + Gets the value for the PopupMenu property @@ -4010,7 +4384,7 @@ - + @@ -4035,7 +4409,7 @@ - + @@ -4158,7 +4532,7 @@ - + @@ -4252,7 +4626,7 @@ - + @@ -4935,8 +5309,8 @@ - - + + @@ -4951,49 +5325,49 @@ - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -5127,49 +5501,79 @@ - TSortType - enumerated type, a series of constants signifying that there is no sorting or that sorting is according to data, test or both - - + Indicates the sort mechanism used for items in tree view and list view controls + + +

+ TSortType is an enumerated type with values indicating the sort mechanism used for items in tree view or list view controls. TSortType is the type used to implement the SortType property in both TCustomTreeView and TCustomListView. +

+
+ + + + + +
- + Sorting is not used for list items - + List items are sorted by their data and not their display text + List items are sorted by their display text and not their data + List items are sorted using both display text and data - - TListItemState - enumerated type denoting the state of a list item - - - + Represents state values for items in a list view control + +

+ TListItemState is an enumerated type with values which represent the state for items in a list view control. The values reflect the current settings for properties in TListItem. +

+

+ Values from TListItemState are stored in the TListItemStates set type. +

+
+ + + +
- + The list item has its Cut property set to True - + The list item has its DropTarget property set to True - + The list item has its Focused property set to True - + The list item has its Selected property set to True - TListItemStates - set of TListItemState + Set type used to store value(s) from the TListItemState enumeration - - + +

+ TListItemStates is a set type used to store zero or more values from the TListItemState enumeration. TListItemStates is the type used to implement the States member in TListItem. Values are included in and excluded from the set when the corresponding properties in TListItem are changed. +

+
+ + + + + + +
@@ -5180,36 +5584,51 @@ - + List item has been marked for destruction by a notify message + List item has been marked as created by a notify message - - TListItemFlags - set of TListItemFlag - - - + Set type used to store TListItemFlag enumeration values + +

+ TListItemFlags is a set type used to store zero or more values from the TListItemFlag enumeration. It is the type used to implement the internal Flags member in TListItem. +

+
+ + + +
TDisplayCode - enumerated type denoting how items are displayed + +

+ TDisplayCode is an enumerated type with values that denote how the item or subitem is displayed in a list view control. The values are passed as arguments to the DisplayRect and DisplayRectSubItem methods in TListItem, and allows the widgetset to layout and rendering the list items for the platform. +

+
+ + + +
- + List item is rendered using the Bounds for the item display rectangle - + List item is rendered using the width and height for the associated image - + List item is rendered using the text metrics for the caption in the item - + List item is rendered using the selection rectangle for the item @@ -5236,7 +5655,7 @@ - + Contains text wrapping and icon layout settings for a list view control

TIconOptions is a TPersistent descendant which represents the text wrapping and icon layout settings in the IconOptions property in TCustomListView. @@ -5260,91 +5679,148 @@ - + Gets the value for the WrapText property - + + + - + Value for the property - + Sets the value for the Arrangement property - + + + - + New value for the property - + Sets the value for the AutoArrange property - + + + - + New value for the property - + Sets the value for the WrapText property - + + + - + New value for the property - - - + Assign values from the class instance to the specified persistent object + +

+ AssignTo is an overridden method which implements support for the TIconOptions type in the RTL object persistence mechanism. AssignTo allows property values from the current class instance to the stored to the persistent object in Dest. +

+

+ When Dest is a TIconOptions instance, AssignTo copies the values from the current class instance: +

+
    +
  • Arrangement
  • +
  • AutoArrange
  • +
  • WrapText
  • +
+

+ If ADest is not derived from TIconOptions, the inherited method is called. +

+
+ + TPersistent.AssignTo +
- + Persistent object where property values are stored - - - + Gets the owner of the class instance + +

+ GetOwner is an overridden method in TIconOptions used to get the owner of the class instance. It returns the TCustomListView instance passed as an argument to the Create constructor. +

+
+ + + + TPersistent +
- + Owner of the class instance - - - + Constructor for the class instance + +

+ Create is the overridden constructor for the class instance, and calls the inherited constructor on entry. Create stores the value in AOwner to an internal member used in the class instance, and sets the default value for the Arrangement property to iaTop. +

+
+ + + +
- + Owner of the class instance - + Indicates the icon position relative to the caption in a list item - Arrangement is a TIconArrangement property. - The default value for the property is iaTop. +

+ Arrangement is a TIconArrangement property which indicates the layout for the icon or image in a list item relative to its caption text. The default value for the property is iaTop, and causes the icon to be displayed above the caption for the list item. +

+

+ See TIconArrangement for other values in the enumeration and their usage. +

- + + +
- + Indicates whether icons in a list view can be automatically arranged - AutoArrange is a Boolean property. - The default value for the property is False. +

+ AutoArrange is a Boolean property which indicates if icons in a list view control can be automatically arranged when items are added to the control. The default value for the property is False. +

+

+ AutoArrange is used when the list view uses the vsIcon or vsSmallIcon view styles. +

- + + + +
- + Indicates if the caption for a list item can wrap into multiple lines - WrapText is a Boolean property. - The default value for the property is True. +

+ WrapText is a Boolean property which indicates if the Caption for a list view item can be wrapped into multiple lines. The default value for the property is True. +

+

+ The Caption for the item is wrapped when its length exceeds the width for the icon in the list item. +

@@ -5355,10 +5831,20 @@

- TListItem is the ancestor class for the Items created in TCustomListView and TListView. Most properties are inherited from ancestors classes, like TPersistent and TObject. + TListItem is the base class for the Items created in TCustomListView and TListView. +

+

+ TListItem provides properties which identify the content for the list item, like: Caption, SubItems, Data, Index, ImageIndeex, and StateIndex. Other properties indicate the disposition of the item in the control, like: Checked, Cut, DropTarget, Focused, and Selected. +

+

+ Methods are provided that allow the list item to interact with the control and the widgetset class. +

+

+ TListItem is the type used in the TListItems container.

+ TPersistent TObject @@ -5375,117 +5861,139 @@ - + Gets the value for the Caption property - + + + - + Value for the property - + Gets the value for the Check property - + + + - + Value for the property - + Gets the value for the Left property - + + + - + Value for the property - + Gets the value for the ListView property - + + + - + Value for the property - + Gets the value for the Position property - + + + - + Value for the property - + Gets the value for the Selected property - + + + - + Value for the property - + Ordinal value for the property in the properties set - + Gets the value for the ImageIndex property - + + + - + Value for the property - + Gets the value for the Index property - + + + - + Value for the property - + Gets the value for the StateIndex property - + + + - + Value for the property - + Gets the value for the indexed SubItemImages property - + Value for the indexed property - + Ordinal position for the sub-item image in the property value - + Gets the value for the SubItems property - + + + - + Value for the property - + Gets the value for the Top property - + + + - + Value for the property @@ -5528,136 +6036,174 @@ - + Sets the value for the Checked property - + + + - + New value for the property - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - The current ListItem IsEqual to the item specified in the argument AItem + Sets the value for the property identified by the ordinal value in ALisOrd + + + Ordinal value from the TListViewProperty enumeration which identifies the property + + + + New value for the property + + + + Sets the value for the Data property + + + + + + + New value for the property + + + + Sets the value for the ImageIndex property + + + + + + + New value for the property + + + + Sets the value for the Left property + + + + + + + New value for the property + + + + Sets the value for the Caption property + + + + + + + New value for the property + + + + Sets the value for the Position property + + + + + + + New value for the property + + + + Sets the value for the StateIndex property + + + + + + + New value for the property + + + + Sets the value for the indexed SubItemImages property + + + + + + + Ordinal position for the new value + + + New value for the indexed property + + + + Sets the value for the SubItems property + + + + + + + New value for the property + + + + Sets the value for the Top property + + + + + + + New value for the property + + + + + Determines if the specified list item has the same values as the current class instance + + +

+ IsEqual is a Boolean function used to determine if the list item has the same values as the list item specified in AItem. IsEqual compares the values in the Caption, Data, and the internal FStates member in both TListItem instances. The return value is True when the content in the instances is the same. +

+
+ +
- + True when the list items have the same content - + List item compared to the current class instance - - - + Determines if the list item has an owner with a valid handle + +

+ IsOwnerData is a Boolean function used to determine if the list item has an owner with a valid handle. IsOwnerData always returns False in TListItem. It is overridden in descendent classes like TOwnerDataListItem. +

+
+ + +
- + Tru if the list item has an owner with a valid handle - - + Truen if the member variable for the Checked property contains True + +

+ Used in methods in the widgetset class. +

+
@@ -5665,65 +6211,101 @@ - - - + Gets the owner of the class instance + +

+ Returns the value in the Owner property. +

+
+ + + TPersistent.GetOwner +
- + Owner of the class instance - Assign - if source has correct type, copies Caption, Data, ImageIndex and SubItems from source, otherwise calls inherited Assign which probably raises an exception + Copies values from the specified persistent object into the current class instance - + +

+ Assign is an overridden method used copy property values from the persistent object in ASource into the current class instance. When ASource is a TListItem descendant, the following property values are copied: +

+
    +
  • Caption
  • +
  • Data
  • +
  • ImageIndex
  • +
  • SubItems
  • +
+

+ If ASource is not descended from TListItem, the inherited method is called to handle the assignment. +

+
TPersistent.Assign
- + Persistent objct with values copied in the method - - Create - constructor for TListItem: calls inherited Create then initializes flags, states, ImageIndex and SubItems - - + Constructor for the class instance + +

+ Create is the constructor for the class instance, and calls the inherited constructor on entry. AOwner is the TListItems instance which acts as the container for the list item. +

+

+ Create sets the default values in member variables used in the class instance. The property interfaces are not used before they are not available until the list item is added to the TListItems container. +

+
+ TObject.Create
- + Container which owns the list item - - Destroy - destructor for TListItem: frees SubItems, sets flags to signify destruction, then calls inherited Destroy - - + Destructor for the class instance + +

+ Destroy is the overridden destructor for the class instance. +

+

+ Destroy sets the internal flag that marks the list item for destruction in the Owner. When the Owner is assigned, its ItemDestroying method is called to signal destruction of the list item in the container. +

+

+ Destroy free and Nils resources allocated for the SubItems property, and calls the inherited destructor prior to exit. +

+
+ + TPersistent.Destroy
- Remove an Item from the list + Removes the list item from the container - MakeVisible - render the item visible (if PartialOK is True, only part may be visible) + Makes the item visibile in the list view control which owns the container and the list item - + True is the list item can be partially visible in the control @@ -5770,12 +6352,18 @@ - + + Makes the item the selection in the list view control and displays the editor when allowed + - + + + + + - + True if the control is not ReadOnly and the editor is valid, otherwise False @@ -5892,7 +6480,7 @@ - + Class refernce used to create new instances of TListItem @@ -6560,9 +7148,16 @@ - TListColumn - an individual column in a multi-column List control + Represents an individual column in a multi-column list control - + +

+ TListColumn is a TCollectionItem descendant which represents an individual column in a multi-column list control. +

+

+ TListColumn is the type used for items added to the TListColumns collection. +

+
@@ -6941,13 +7536,13 @@
- + - + @@ -7447,95 +8042,122 @@ - TListViewProperty - enumerated type: a series of constants denoting the properties of a listview + Represents Boolean properties used in TCustomListView

- TListViewProperty is an enumerated type with a series of constants denoting the properties of a listview. + TListViewProperty is an enumerated type with values representing Boolean properties used in TCustomListView. +

+

+ Values from the enumeration are included in or excluded from the TListViewProperties set type. When a value is included in the set, the corresponding Boolean property has been set to True. When a value is excluded from the set, the corresponding Boolean property has been set to False.

- + Represents the AutoArrange property in TCustomListView - + Represents the CheckBoxes property in TCustomListView - + Represents the ColumnClick property in TCustomListView - + Represents the FlatScrollBars property in TCustomListView - + Represents the FuillDrag property in TCustomListView - + Represents the GridLines property in TCustomListView - + Represents the HideSelection property in TCustomListView - + Represents the HotTrack property in TCustomListView - + Represents the MultiSelect property in TCustomListView - + Represents the OwnerDraw property in TCustomListView - + Represents the ReadOnly property in TCustomListView - + Represents the RowSelect property in TCustomListView - + Represents the ShowColumnHeaders property in TCustomListView - + Represents the ShowWorkAreas property in TCustomListView - + Represents the WrapText property in TCustomListView - - + + Represents the ToolTips property in TCustomListView - TListViewProperties - set of TListViewProperty + Set type used to store values from the TListViewProperty enumeration - - + +

+ TListViewProperties is a set type used to store zero or more values from the TListViewProperty enumeration. +

+

+ The set represents Boolean property values found in TCustomListView / TListView. When a value is included in the set, the correspondng property in TCustomListView has been set to True. The value is excluded from the set when the correspondng property in TCustomListView is set to False. +

+

+ TListViewProperties is the type used to implement the internal FProperties member in TCustomListView. +

+
+ + + +
- TListViewImageList - enumerated type denoting the category of image list + Represents the image list sizes used in TCustomListView - + +

+ TListViewImageList is an enumeration type with values that represent image list sizes used in TCustomListView. +

+
- + Represents the SmallImages property in TCustomListView - + Represents the LargeImages property in TCustomListView - + Represents the StateImages property in TCustomListView - TListHotTrackStyle - enumerated type denoting the style of HotTrack + Represents cursor shapes displayed during hot tracking in a control - - + +

+ TListHotTrackStyle is an enumerated type with values for cursor shapes displayed for the "hot tracking" state in a TCustomListView control. Hot tracking occurs when the mouse pointer hovers over an item in a control, and it is highlighted (aka hot-lighted). Values from TListHotTrackStyle are stored in the TListHotTrackStyles set type used for the TCustomListView.HotTrackStyles property. +

+
+ + + +
For current ListView item, show the HandPoint mouse cursor. @@ -7549,84 +8171,128 @@ - TListHotTrackStyles - set of TListHotTrackStyle + Set type used to store values from TListHotTrackStyle - - + +

+ TListHotTrackStyles is a set type used to store zero or more values from the TListHotTrackStyle enumertation. TListHotTrackStyles is the type used to implement the TCustomListView.HotTrackStyles property. +

+
+ + + +
- TListViewFlag - enumerated type (currently containing only one value) for List View flag + Represents flag values used in TCustomListView when sorting or validating items in the control - + The value in the Selected property is valid - + Items in the control are being moved - + Items in the control are being sorted - + Sort parameters are being prepared - TListViewFlags - set of TListViewFlag + Set type used to store values from the TListViewFlag enumeration - - + +

+

+ TListViewFlags is the type used to implement the internal flags for the TCustomListView control. +

+

+
+ + +
- + Represents sort directions for items in a list view control - + + + + + + + - + Sorts list items in ascending order - + Sorts list items in descending order - + Provides multi-platform editing capabilities for a list view control - Used to provide multi-platform editing capabilities for TCustomListView. +

+ Used to provide multi-platform editing capabilities for TCustomListView. Implements the internal editor control in TCustomListView. +

- + + + + +
- + - - - + Implements the OnKeyDown event handler for the editor control + +

+ Ensures that the VK_ESCAPE and VK_RETURN virtual key codes are handled for the editor. VK_ESCAPE causes the editor to be hidden, and focused in returned to the parent control. VK_RETURN does not hide the editor, but focus is returned to the parent control. In both cases, Key is set to 0 to indicate that the key was handled in the method. +

+
+ + + TWinControl.OnKeyDown +
- + Object for the event notification - + Virtual key code examined in the method - + Shift / Ctrl / Alt modifier for the key code - - - + Performs actions needed when the editor loses focus + +

+ Calls the HideEditor method in the parent control (TCustomListView). + Calls the inherited method prior to exit. +

+
+ + + +
- - + Constructor for the class instance + + Create is the overridden constructor for the class instance, and calls the inherited method on entry. + @@ -7634,9 +8300,19 @@ - - - + List item updated in the editor control + +

+ Item is a TListItem property with the list item updated in the editor control. + The value in Item is assigned in the ShowEditor method in the parent control (TCustomListView). Item is set to Nil when the editor control is hidden. +

+
+ + + + + +
@@ -7645,8 +8321,25 @@

- TCustomListView is the base class for TListView. If you want to define your own ListView class, you should derive it from this class. + TCustomListView is the base class for TListView. It provides a multi-platform implementation of the List View control from the Windows API. TCustomListView allows a collection of items to be displayed using different view styles. For instance:

+
+
Icon View
+
Each list item has an large icon with a caption.
+
Small Icon View
+
Each list item has a small icon with a caption.
+
List View
+
+ Each list item has a small icon with a caption, and is displayed in a single column in the control. +
+
Report View
+
+ Each list item is displayed on a single line, with sub-items displayed as additional columns. The first column has a small icon and a caption. Other columns contain the text for the sub-items. +
+
+ + TCustomListView does not implement some features available for Windows version 6 or higher, including: the Tile View style, List View Item Grouping, and List View Work Areas. +
@@ -7703,427 +8396,656 @@ - + Gets the value for the BoundingRect property - + + + - + Value for the property - + Gets the value for the ColumnCount property - + + + - + Value for the property - + Gets the value for the indexd Column property - + + + - + Value for the property - + Ordinal position for the indexed property value - + Gets the value for the DropTarget property - + + + - + Value for the property - + Gets the value for the ItemFocused property - + + + - + Value for the property - + Gets the value for the indexed LargeImages property - + + + - + Value for the property - + Ordinal position for the indexed property value - + Gets the value for the HoverTime property - + + + - + Value for the property - + Gets the value for the ItemIndex property - + + + - + Value for the property - - - + + Determines if the specified Boolean property has been set in the control + + +

+ GetProperty is a Boolean method used to determine if the specified property value has been set to True in the control. +

+

+ ALvpOrd contains a value from the TListViewProperty enumeration which identifies the property value accessed in the method. The return value is True when ALvpOrd has been included in the internal TListViewProperties set. +

+

+ This technique allows multiple Boolean properties to be represented using a single set type member variable. It avoids allocating a Boolean member for each of the property values. +

+

+ GetProperty is used as the read access specifier for several properties in TCustomListView, including: +

+
    +
  • ColumnClick
  • +
  • HideSelection
  • +
  • OwnerDraw
  • +
  • ShowColumnHeaders
  • +
  • ShowWorkAreas
  • +
  • ToolTips
  • +
  • CheckBoxes
  • +
  • FlatScrollBars
  • +
  • FullDrag
  • +
  • GridLines
  • +
  • HotTrack
  • +
  • MultiSelect
  • +
  • ReadOnly
  • +
  • RowSelect
  • +
+

+ See SetProperty for the write access specifier equivalent. +

+
+ + + + +
- + Value for the property - + Ordinal TListViewProperty value used to access the property value - + Gets the value for the SelCount property - + + + - + Value for the property - + Gets the value for the Selected property - + + + - + Value for the property - + Gets the value for the TopItem property - + + + - + Value for the property - + Gets the value for the ViewOrigin property - + + + - + Value for the property - + Gets the value for the VisibleRowCount property - + + + - + Value for the property - - - + Makes the last visible column fill the remaining width in the control + +

+ ResizeLastColumn is a method used to make the last visible column fill the remaining unused width for the control. +

+

+ ResizeLastColumn is relevant when ViewStyle is set to vsList or vsReport, and ColumnCount is not set to 0 (zero). No actions are performed in the method if both conditions are not met. +

+

+ ResizeLastColumn examines the values in Columns (in reverse order) to find the last TListColumn instance with its Visible property set to True. The accumulated width for the preceeding visible columns (and borders) is calculated. The difference between ClientWidth and the accumulated width is used for the last column when it is a positive non-zero value. +

+

+ The column affected in the method has its AutoSize, MinWidth, and MaxWidth properties reset before applying the new Width. +

+

+ ResizeLastColumn is used when AutoWidthLastColumn is set to True. The method is called when the bounds for the control have been changed, or when the vaule in AutoWidthLastColumn has been changed. +

+
+ + + + + + + + + + +
- + Sets the value for the AllocBy property - + + + - + New value for the property - + Sets the value for the AutoWidthLastColumn property - + + + - + New value for the property - + Sets the value for the Columns property - + + + - + New value for the property - + Sets the value for the DefaultItemHeight property - + + + - + New value for the property - + Sets the value for the DropTarget property - + + + - + New value for the property - + Sets the value for the ItemFocused property - + + + - + New value for the property - + Sets the value for the HotTrackStyles property - + + + - + New value for the property - + Sets the value for the HoverTime property - + + + - + New value for the property - + Sets the value for the IconOptions property - + + + - + New value for the property - - - + + Sets the value for properties like LargeImages, SmallImages, and StateImages + + +

+ SetImageList is the write access specifier for properties including LargeImages, SmallImages, and StateImages. The value in ALvilOrd indicates which image list is updated in the method. +

+
+ + + + + + +
- + + TListViewImageList value which identifies the image list updated in the method + - + New value for the indexed property - + Sets the value for the LargeImagesWidth property - + + + - + Identifier for the image list affected in the method - + New value for the property - + + Notifies the widgetset class when an image list for the control has been changed + - + + + + + + + - + Identifies the image list updated in the method - + Sets the value for the ItemIndex property - + + + - + New value for the property - + Sets the value for the Items property - + + + - + New value for the property - - + + Notifies the widgetset class when the visibiity for a list item has been changed + + +

+ Calls the ItemShow method in the widgetset class. +

+

+ No actions are performed in the method during LCL component streaming, or when the Handle has not been allocated for the control. +

+
- + List item with the changed visibility - + + True when the list item can be partially visible in the control; False requires the item to be fully visible to be displayed + - + Sets the value for the OwnerData property - + + + - + New value for the property - - - + Sets the value for the specified Boolean property + +

+ SetProperty is a method used to set the Boolean value for the property represented by the value in ALvpOrd. +

+

+ ALvpOrd contains a value from the TListViewProperty enumeration which identifies the property updated in the method. AIsSet contains the new Boolean value for the property. +

+

+ SetProperty is used as the write access specifier for several properties in TCustomListView, including: +

+
    +
  • ColumnClick
  • +
  • HideSelection
  • +
  • OwnerDraw
  • +
  • ShowColumnHeaders
  • +
  • ShowWorkAreas
  • +
  • ToolTips
  • +
  • CheckBoxes
  • +
  • FlatScrollBars
  • +
  • FullDrag
  • +
  • GridLines
  • +
  • HotTrack
  • +
  • MultiSelect
  • +
  • ReadOnly
  • +
  • RowSelect
  • +
+

+ This technique allows multiple Boolean properties to be represented using a single set type member variable. It avoids allocating a Boolean member for each of the property values. +

+

+ See GetProperty for the read access specifier equivalent. +

+
+ + + + +
- + Identifies the property updated in the method - + Value for the specified property - + Sets the value in the ScrollBars property - + + + - + New value for the property - + Sets the value in the Selected property - + + + - + New value for the property - + Sets the value for the ShowEditorQueued property - + New value for the property - + Sets the value for the SortColumn property - + + + - + New value for the property - + Sets the value for the SortDirection property - + + + - + New value for the property - + Sets the value for the SortType property - + + + - + New value for the property - + Sets the value for the ViewOrigin property - + + + - + New value for the property - + Sets the value for the ViewStyle property - + + + - + New value for the property - - + Performs an asynchronous display of the editor for the control + +

+ Toggles the Boolean value in the ShowEditorQueued property, and calls the ShowEditor method. +

+

+ QueuedShowEditor is called when the ShowEditorQueued property is set to True. + Application.QueueAsyncCall is used to asynchronously execute the method. +

+
- + Not used in the current implementation - + + + + + + + + + + + - - + Not implemented in the current LCL version + +

+ Not implemented in the current LCL version. +

+
- - + + Handles the CN_NOTIFY message for the control + + + + + Message examined in the method + - + Handles the CN_DRAWITEM message for the control - + Message examined in the method - + Clears the current selection in the control - + + Implements the event handler signalled when the handle for an image list resolution is freed + @@ -8138,40 +9060,58 @@ - - + + Performs an asynchonous notificaton when an image list in the control is changed + + +

+ Calls SetImageListWS using the TListViewImageList value passed in the Data argument. +

+
- + Identifies the image list updated in the control - - - - - - - - - - - + + - - - + Hides the editor control for the list view + +

+ HideEditor is a method used to hide the TCustomListViewEditor instance used as the editor in the list view control. +

+

+ HideEditor applies the current text in the editor to the selected Item by calling DoEndEdit. The Visible property in the editor is set to False. Values in the editor are reset, including the reference to the list item and the bounds for the editor control. +

+

+ HideEditor is called when the list view control loses focus. It is also called when horizontal and vertical scroll messages are handled in the control, and when a column has been clicked. +

+

+ Use ShowEditor to configure and display the editor for the current item in the list view control. +

+
+ + + + + + + + +
- + DIsplays the editor for the list view - + Handles the LM_HSCROLL message for the control @@ -8180,7 +9120,7 @@
- + Handles the LM_VSCROLL message for the control @@ -8189,7 +9129,7 @@
- + Indicates if ShowEditor has been called asynchronously for the control @@ -8216,7 +9156,7 @@
- + @@ -8248,8 +9188,8 @@
- - + + @@ -8270,15 +9210,25 @@ - - + Determines if the specified Item can be edited in the control + +

+ CanEdit is a Boolean function used to determine if the editor can be displayed and activated for the specified Item. The return value defaults to True. +

+

+ CanEdit signals the OnEditing event handler (when assigned), where the return value can be modified. Use values in Item or the list view control to determine the return value (including their respective ReadOnly properties). +

+

+ CanEdit is called from the ShowEditor method, and occurs before the Editor in the control is configured and displayed. +

+
- + True if the editor can be displayed and activated for the specified item - + List item to examine in the method @@ -8313,20 +9263,23 @@ - - Delete an Item from the List - - + Deletes the specified list item + +

+ Delete is a method used to delete the list item specified in AItem. +

+

+ In Delphi, Delete is called in reaction to Items.Delete. But if you call it directly, it will also do the actual deletion and then call the OnDeletion handler. We simply call Items.Delete and this will then call Delete again and in the second run we call the OnDeletion handler. Not 100% Delphi compatible, but more compatible then it was before. (BB) +

+
- + List item deleted in the method - - DoDeletion - performs the actual deletion - + Performs actions needed to delete the specified list item @@ -8335,7 +9288,7 @@
- Performs the insertion + Performs actions needed to insert the specified list item @@ -8343,8 +9296,29 @@
+ + Inserts an Item into the List + +

+ Signals the OnInsert event handler (when assigned) using the value in AItem as an argument. +

+

+ InsertItem is called from the DoInsert method when an overridden method has been implemented in a descendent class and called from ItemInserted. +

+
+ + + + + + +
+ + Item with the values inserted into the Items for the control + + - + Synchronizes the checked state for an item with the widgetset class @@ -8354,7 +9328,7 @@ - DoSelectItem - perform item selection + Signals the OnSelectItem event handler when the current selection is changed @@ -8376,7 +9350,7 @@ DoAutoAdjustLayout extends the ancestor method to include support for sizing the columns in the list view using the proportions specified in AXProportion and AYProportion for the display density (DPI). DoAutoAdjustLayout also ensures that the widgetset class is initialized for each of the image list sizes represented by the TListViewImageList enumeration.

- No actions are performed in the method if AMode does NOT include one of the following values: lapAutoAdjustWithoutHorizontalScrolling or lapAutoAdjustForDPI. + No actions are performed in the method if AMode does not include one of the following values: lapAutoAdjustWithoutHorizontalScrolling or lapAutoAdjustForDPI.

@@ -8394,7 +9368,9 @@
- + + Resizes the last column (if enabled) when the bounds for the control have been changed + @@ -8432,27 +9408,6 @@
- - Inserts an Item into the List - -

- Signals the OnInsert event handler (when assigned) using the value in AItem as an argument. -

-

- InsertItem is called from the DoInsert method when an overridden method has been implemented in a descendent class and called from ItemInserted. -

-
- - - - - - -
- - Item with the values inserted into the Items for the control - - ImageChanged - procedure to signal that an image has changed @@ -8464,11 +9419,23 @@ - + + + +

+ Creates columns in the widgetset class when the Handle for the control has been allocated. Calls the inherited method prior to exit. +

+
+ +
- + +

+ Ensures that members for the LargeImages, SmallImages, and StateImages are set to Nil when the corresponding image list is removed. +

+
@@ -8482,7 +9449,11 @@ IsCustomDrawn - returns True if a target has been custom drawn - + +

+ Indicates whether the control, items, or sub-items are custom-drawn using the event handlers available in the control. +

+
@@ -8499,6 +9470,11 @@ CustomDraw - performs custom drawing in the given rectangle and returns True if successful + +

+ Draws the control using the OnCustomDraw or OnAdvancedCustomDraw event handlers (when assigned). +

+
@@ -8514,7 +9490,11 @@ CustomDrawItem - custom draws the specified item and returns True if successful - + +

+ Draws an item in the control using the OnCustomDrawItem or OnAdvancedCustomDrawItem event handlers (when assigned). +

+
@@ -8534,7 +9514,11 @@ CustomDrawSubItem - custom draws the specified subitem returning True if successful - + +

+ Draws a sub-item in the control using the OnCustomDrawSubItem and OnAdvancedCustomDrawSubItem event handlers (when assigned). +

+
@@ -8586,17 +9570,23 @@ - - + Gets the value for the internal update counter + + The internal counter is maintained when the BeginUpdate and EndUpdate methods are called. + - + Value for the internal update counter in the control - - + Draws the specified list item with a given state + +

+ Signals the OndrawItem event handler (when assigned) to draw the list item. Calls the FillRect and TextOut methods in the control Canvas when the event handler is not assigned. +

+
@@ -8610,8 +9600,14 @@ - - + + Performs actions to get list item data when OwnerData is True + + +

+ Signals the OnData event handler (when assigned) to get the data for the list item. Properties in Item are updated in the event handler with the values needed for the list item. +

+
@@ -8673,7 +9669,7 @@ Handles an F2 function key pressed when the control has focus. Ensures that the editor is displayed when the control is not marked as ReadOnly. The keystroke is digested (set to zero).

- If the control is marked as ReasdOnly, or Key is not the unshifted F2 function key, the inherited KeyDown method is called to handle the values in Key and Shift. + If the control is marked as ReadOnly, or Key is not the unshifted F2 function key, the inherited KeyDown method is called to handle the values in Key and Shift.

@@ -8763,7 +9759,7 @@

- A typical application might have two ImageLists: one ofLargeImages and one of SmallImages containing two versions of the same collection of images, in large and small format; the index numbers of the first list would correspond with those in the second list. + A typical application might have two ImageLists: one of LargeImages and one of SmallImages containing two versions of the same collection of images, in large and small format; the index numbers of the first list would correspond with those in the second list.

SmallImages could be displayed beside the text strings in the list view and the programmer would supply code to ensure that when an item with its associated SmallImage was selected, the corresponding LargeImage would be displayed in another window. @@ -8819,7 +9815,7 @@

- A typical application might have two ImageLists: one ofLargeImages and one of SmallImages containing two versions of the same collection of images, in large and small format; the index numbers of the first list would correspond with those in the second list. + A typical application might have two ImageLists: one of LargeImages and one of SmallImages containing two versions of the same collection of images, in large and small format; the index numbers of the first list would correspond with those in the second list.

SmallImages could be displayed beside the text strings in the list view and the programmer would supply code to ensure that when an item with its associated SmallImage was selected, the corresponding LargeImage would be displayed in another window. @@ -8832,7 +9828,7 @@ - + Width for the images in the SmallImages property SmallImagesWidth is an Integer property that indicates the width used for small images displayed in the list view. The default value for the property is zero (0). @@ -8840,47 +9836,49 @@ - - Sets sorting order for current sorting column: by text, by Data of items, both or none - + Specifies the sorting mechanism used for the current SortColumn - Index of column, by which ListView was last sorted. -1 for none. + Index of the column used to sort the items in the control, or -1 for none - Sets sorting direction for current sorting column. + Sorting direction (order) for the current SortColumn - - ImageList object, which contains "state" icons, for item states: selected, normal, etc - + ImageList object with the state images for the items in the control - + Width of the images in the StateImages property - StateImagesWidth is an Integer property the represents width used for state images displayed in the list view. The default value for the property is zero (0). +

+ StateImagesWidth is an Integer property the represents width used for state images displayed in the list view. The default value for the property is zero (0) and indicates that a default image width has not been specified. +

- Automatically show hints (tooltips) for ListView items, when mouse is over items + Indicates if a hint (tooltip) is automatically displayed for an item under the mouse cursor - + + + + TControl.Hint + @@ -9220,7 +10218,7 @@

- GetNextItem is a TListItem function used to find the next list item after StartItem in the direction given by the Direction parameter. Only items in the state indicated by the States parameter are considered. If no item is found Nil is returned. + GetNextItem is a TListItem function used to find the next list item after StartItem in the direction given by the Direction parameter. Only items in the state indicated by the States parameter are considered. If no item is found, Nil is returned.

@@ -9267,7 +10265,7 @@
- + TCanvas object, defines the area on which all graphic is drawn @@ -9458,7 +10456,7 @@ - + @@ -9501,7 +10499,7 @@ The important information is held in Items, a string-list that can be created using the string-list editor obtained by right-clicking on the ListView in the Form Editor or by clicking on the ellipsis (...) next to the Items entry in the Object Inspector.

- A typical application might have two ImageLists: one ofLargeImages and one of SmallImages, containing two versions of the same collection of images, in large and small format; the index numbers of the first list would correspond with those in the second list. + A typical application might have two ImageLists: one of LargeImages and one of SmallImages, containing two versions of the same collection of images, in large and small format; the index numbers of the first list would correspond with those in the second list.

SmallImages (if assigned to a string-list) can be displayed beside the text strings in the list view and the programmer would supply code to ensure that when an item with its associated Small Image was selected, the corresponding Large Image would be displayed in another window. @@ -9512,25 +10510,25 @@ - + - + - - - + + + - + - - - - - - + + + + + + @@ -9540,35 +10538,35 @@ - - - - + + + + - - - - + + + + - - + + - + - + - + @@ -9577,81 +10575,114 @@ - + - - + + - - - - + + + + - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + - - - - + + + + - - TProgressBarOrientation - enumerated type with a series of constants denoting the orientation of the progress bar - - - + Represents the orientations used for a progress bar + +

+ TProgressBarOrientation is an enumerated type with values that represent the orientations used for a progress bar. TProgressBarOrientation is the type used to implement the TCustomProgressBar.Orientation property. +

+
+ + +
- + + Progress bar is oriented horizontally, and displays progress from left to right + - + + Progress bar is oriented vertically, and displays progress from bottom to top + - + + Progress bar is oriented horizontally, and displays progress from right to left + - + + Progress bar is oriented vertically, and displays progress from top to bottom + - - - + Represents the visual display styles used for a progress bar + +

+ TProgressBarStyle is an enumerated type with values that represent visual display styles for a progress bar. TProgressBarStyle is the type used to implement the TCustomProgressBar.Style property. +

+
+ + + +
- + + Progress bar indicator is displayed as a static bar using the native drawing style or theme for the platform + - + + Progress bar indicator is displayed as an animated marquee, where movement indicates activity but does not reflect the completed portion of a task + - - The ancestor class for TProgressBar - + Implements the base class for progress bar controls

- TCustomProgressBar is the ancestor for TProgressBar. If you want to define your own ProgressBar class, you should derive it from this class. +

+ TCustomProgressBar is a TWinControl descendant which implements a progress bar control. +

+

+ A progress bar is used to indicate the progress for a lengthy operation. It contains an indicator bar that is updated with the completion percentage for the task. A progess bar can use either horizontal or vertical orientations. The visual appeance of the control can be configured using drawing styles, themes, and other property settings. +

+

+ TCustomProgressBar is the ancestor for TProgressBar. +

+ + + TWinControl +
@@ -9665,129 +10696,177 @@ - + Gets the value for the Min property - + + + - + Value for the property - + Gets the value for the Max property - + + + - + Value for the property - + Gets the value for the Position property - + + + - + Value for the property - - - + Sets the values for the Min and Max properties + +

+ SetParams is a convenience method used to set new values for both the Min and the Max properties. +

+
+ + + +
- + New value for the Min property - + New value for the Max property - + Sets the value for the Min property - + + + - + New value for the property - + Sets the value for the Max property - + + + - + New value for the property - + Sets the value for the Position property - + + + - + New value for the property - + Sets the value for the Step property - + + + - + New value for the property - + Sets the value for the Smooth property - + + + - + New value for the property - + Sets the value for the BarShowText property - + + + - + New value for the property - + Sets the value for the Orientation property - + + + - + New value for the property - + Sets the value for the Style property - + + + - + New value for the property - + ApplyChanges - apply any changes that have occurred - - + +

+ ApplyChanges is a method used to apply property values from the progress bar to the widgetset class. +

+

+ Values in the Min, Max, and Position properties are normalized; i. e. Min <= Position <= Max. When the Handle has been allocated for the control, the values are applied to the widgetset class by calling its ApplyChanges method. +

+

+ No actions are performed in the method when the component is being loaded using the LCL streaming mechanism. +

+

+ ApplyChanges is called when the Handle is created (or re-created) in InitializeWnd, and from the Loaded method when component streaming has been completed. It is also called when values in properties are changed, including: Min, Max, Position, Step, Orientation, Smooth, and BarShowText. +

+
+ + + + + + +
- InitializeWnd calls inherited method then applies changes + Applies property values to the widgetset class when the Handle is (re-)created @@ -9797,7 +10876,7 @@ - Loaded calls inherited method then applies changes + Applies property values to the widgetset class when component streaming is completed @@ -9806,106 +10885,201 @@ - - GetControlClassDefaultSize returns its own defaults, overriding inherited values - + Gets the default size for new instances of the class TControl.GetControlClassDefaultSize - - Create - constructor for TCustomProgressBar: calls inherited Create, initializes position, orientation and size - - + Constructor for the class instance + +

+ Create is the overridden constructor for the class instance, and calls the inherited constructor on entry. Create sets component style flags needed for the control, and sets the default values for properties in the class instance. +

+
TComponent.Create TWinControl.Create
- + Owner of the class instance - - StepIt - move indicator to new position (current position plus Step) - - - + Increments the Position for the progress bar by the value in Step + +

+ StepIt is a procedure used to move the progress bar indicator from its current Position using the increment specified in the Step property. The value is Step is added to the value in Position. Position is range limited to the values in Min or Max if needed. +

+

+ If the Handle for the control has been allocated, the SetPosition method in the widgetset class is called to apply the change in the Position property. +

+

+ Use StepBy to apply an arbitrary increment value to Position. +

+
+ + + + +
- StepBy - move indicator by amount specified in Delta + Applies an arbitrary increment value to the Position for the progress bar - + + + - + Increment applied to the value in Position - - Max - maximum value for progressbar - - - + Specifies the maximum value for the Position in the progress bar + +

+ Max is an Integer property which specifies the maximum value allowed in the Position property. The default value for the property is 100. +

+

+ Set values for the Min and Max properties as needed to represent the task or operation. Or, use the SetParams method to set both Min and Max values at the same time. +

+

+ Changing the value for the property causes the ApplyChanges method to be called. +

+
+ + + + + +
- - Min - minimum value of progressbar - - - + Specifies the minimum value for the Position in the progress bar + +

+ Min is an Integer property which specifies the minimum value allowed in the Position property. The default value for the property is 0. +

+

+ Set values for the Min and Max properties as needed to represent the task or operation. Or, use the SetParams method to set both Min and Max values at the same time. +

+

+ Changing the value for the property causes the ApplyChanges method to be called. +

+
+ + + + + +
- Orientation - horizontal or vertical + Specifies the orientation and direction for the progress bar - - + +

+ Orientation is a TProgressBarOrientation property whiich indicates the orientation and direction for the progress bar. The default value is pbHorizontal, and orients the progress bar horizontally. As the value in Position is increased, the progress bar is moved from left to right. +

+

+ See TProgressBarOrientation for the available values and their meanings. +

+

+ Changing the value for the property causes the ApplyChanges method to be called. +

+
+ + + + + + +
- - Position of indicator along progressbar - - - + The current position for the progress bar + +

+ Position is an Integer property which contains the current position for the progress bar. The values in Position, Min, and Max determine the completion percentage and the length for the progress bar indicator when Style is set to pbstNormal. +

+

+ Position must be in the range specified by the Min and Max properties. Setting a new value for the property causes the ApplyChanges method to be called. It validates and range limits property values before they are applied to the widgetset class. +

+

+ Use StepIt and Step to increment the value in Position by a fixed value. +

+

+ Use StepBy to increment the value in Position by an arbitrary value. +

+
+ + + + + + + + + +
- Whether Smooth display (True) or stepped - - + + Indicates if the progress bar indicator is drawn as a amooth solid bar, as opposed to individual bar segments + + +

+ The implementation of Smooth drawing is platform-dependent. Some widgetsets do not use the segmented drawing style for their progress bars. For those platforms, the value in the property is not used. +

+

+ Use Style to control whether a normal progress bar is drawn, or if an animated marquee is used in the progress bar indicator. +

+
+ + +
- Step - size of increment for display + Increment applied to the value in Position in the StepIt method - + + Drawing style for the progress bar + - The default value for the property is pbstNormal. +

+ The default value for the property is pbstNormal, and causes a solid (or segmented bar) to be displayed. pbstMarquee causes the animated marquee-style progress bar to be displayed. +

- BarShowText - some widgetsets allow text to be displayed on the bar to indicate its position (e.g. 32%) + Indicates if status text is draw over the progress bar - + +

+ BarShowText some widgetsets allow text to be displayed on the bar to indicate its position and range of values. The implementation of BarShowText is platform-specific. If the widgetset does not display text on the progress bar, the value in the property is not used. +

+
@@ -9923,50 +11097,50 @@
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -10003,31 +11177,40 @@ - - + + Indicates whether a value is being increased, decreased, or not changed + + +

+ TUpDownDirection is an enumerated type with values that indicates whether a value is being increased, decreased, or not changed in a TCustomUpDown control. TUpDownDirection is the type passed as an argument to TUDChangingEventEx event handers. +

+
- + The value is not changed in the control - + The value is increased in the control - + The value is decreased in the control - - TUDBtnType - enumerated type with constants describing the buttons of an UpDown control: Next or Previous - - + Represents the buttons used in a TCustomUpDown control + +

+ TUDBtnType is an enumerated type with values that represent the buttons used in a TCustomUpDown control. +

+
- + Represents the Next (Up, Increase Value) button + Represents the Previous (Down, Decrease Value) button @@ -10314,7 +11497,7 @@
- + @@ -10745,49 +11928,49 @@ - - - - - - - - - - - - - + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + Message constant @@ -11180,7 +12363,7 @@ - + @@ -11253,7 +12436,7 @@ - + @@ -11264,7 +12447,7 @@ - + @@ -11282,7 +12465,7 @@ - + @@ -11300,19 +12483,19 @@ - + - + - + @@ -11324,19 +12507,19 @@ - + - + - + @@ -11351,7 +12534,7 @@ - + @@ -11394,7 +12577,7 @@ - + @@ -11422,9 +12605,9 @@ - + - + @@ -11433,7 +12616,7 @@ - + @@ -11469,7 +12652,7 @@ - + Invokes the OnArrowClick event handler @@ -11501,7 +12684,7 @@ - + @@ -11551,7 +12734,7 @@ Vertical coordinate examined in the method - + @@ -11564,13 +12747,13 @@ - + - + @@ -11582,19 +12765,19 @@ - + - + - + @@ -11612,7 +12795,7 @@ - + @@ -11628,7 +12811,7 @@ - + @@ -11668,29 +12851,29 @@ It is not executed if DropDownMenu is assigned. - + - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + Show/Hide caption @@ -11698,7 +12881,7 @@ - + Determines the style of the tool button. @@ -11709,8 +12892,8 @@ - - + + Has this button been wrapped to the next row? @@ -12128,9 +13311,9 @@ - + - + @@ -12175,7 +13358,7 @@ - + @@ -12202,13 +13385,13 @@ - + - + @@ -12246,7 +13429,7 @@ - + Performs actions needed when the control has finished loading from the LCL streaming mechanism @@ -12254,7 +13437,7 @@ - + @@ -12266,7 +13449,7 @@ - + Displays the tool bar

@@ -12336,7 +13519,7 @@ - + @@ -12388,7 +13571,7 @@ - + @@ -12420,7 +13603,7 @@ - + Always returns False for TToolBar @@ -12476,11 +13659,11 @@ - - - - - + + + + + @@ -12508,10 +13691,10 @@ - - - - + + + + The Images on the Image List that are NOT selected for display @@ -12519,9 +13702,9 @@ - - - + + + Width of the drop down arrow button. @@ -12554,7 +13737,7 @@ - + @@ -12577,9 +13760,9 @@ - + - + The default value for the property is 32 (pixels). @@ -12625,25 +13808,25 @@ - + - + - + - + @@ -12657,19 +13840,19 @@ - + - + - + @@ -12681,7 +13864,7 @@ - + @@ -12693,31 +13876,31 @@ - + - + - + - + - + @@ -12737,49 +13920,49 @@ - + - + - + - + - + - + - + - + @@ -12809,19 +13992,19 @@ - + - + - + @@ -12873,11 +14056,22 @@ - + Implements a band displayed on the TCoolBar control - TCoolBand is a TCollectionItem descendant. +

+ TCoolBand is a TCollectionItem descendant which implements a band displayed on the TCoolBar control. +

+

+ A band contains a single Control that is displayed as a moveable, sizeable area on the TCoolBar control. It has a Grabber (sizing grip) that is used to move and resize the band. It can also have a bitmap image and text displayed at the start of the band prior its Control. The band be configured with a fixed size, and may occupy the entire width for the TCoolBar. +

+

+ TCoolBand is the type used for the items in the TCoolBands collection. +

- + + + +
@@ -12904,215 +14098,266 @@ - + Implements the storage specifier for the Bitmap property - + True when ParentBitmap is not set - + Implements the storage specifier for the Color property - + True when ParentColor is not set - + Gets the value for the Right property - + + + - + Value for the property + Gets the value for the Visible property - + + + - + Value for the property - + Sets the value for the Bitmap property - + + + - + New value for the property + Sets the value for the BorderStyle property - + + + - + New value for the property - + Sets the value for the Break property - + + + - + New value for the property - + Sets the value for the Color property - + + + - + New value for the property - + Sets the value for the Control property - + + + - + New value for the property - + Sets the value for the FixedBackground property - + + + - + New value for the property - + Sets the value for the HorizontalOnly property - + + + - + New value for the property - + Sets the value for the ImageIndex property - + + + - + New value for the property - + Sets the value for the MinHeight property - + + + - + New value for the property - + Sets the value for the MinWidth property - + + + - + New value for the property - + Sets the value for the ParentBitmap property - + + + - + New value for the property - + Sets the value for the ParentColor property - + + + - + New value for the property - + Sets the value for the Text property - + + + - + New value for the property - + Sets the value for the Visible property - + + + - + New value for the property - + Sets the value for the Width property - + + + - + New value for the property - + Default value for the MinHeight property - + Default value for the MinWidth property - + Default value for the Width property - + Default indentation used for the grabber (sizing grip) - + Left coordinate for the Control in the band - + Top coordinate for the Control in the band - + Width (pixels) for the value in the Text property - - + Calculates the left coordinate for the Control in the band + +

+ Reserves space needed for elements in the TCoolBand instance, including: +

+
    +
  • Indent spacing for the Grabber (SIzing Grip)
  • +
  • Horizontal spacing
  • +
  • The space needed for the Text
  • +
  • The space needed for the Image (scaled to the current PPI)
  • +
+

+ The return value contains the offset in the band where the Control is displayed. +

+
- + Offset in the band where the Control is displayed - + + Calculates the band height using the orientation and settings in the parent control + @@ -13121,7 +14366,9 @@
- + + Calculates the band width using the orientation and settings in the parent control + @@ -13130,7 +14377,9 @@
- + + Gets the numer of pixels needed for Text using the Font in the parent control + @@ -13139,8 +14388,12 @@
- - + Gets the display name for the collection item + +

+ Uses the value in Text (when assigned). Otherwise, the ClassName is used as the display name. +

+
@@ -13149,7 +14402,33 @@ Constructor for the class instance - + +

+ Create is the overridden constructor for the class instance. Create sets the default values for properties in the collection item, including: +

+
    +
  • Break (True)
  • +
  • Color (clDefault)
  • +
  • Control (set to Nil)
  • +
  • FixedBackground (True)
  • +
  • ImageIndex (-1)
  • +
  • MinHeight (cDefMinHeight)
  • +
  • MinWidth (cDefMinWidth)
  • +
  • ParentBitmap (True)
  • +
  • ParentColor (True)
  • +
  • Visible (True)
  • +
  • Width (cDefWidth)
  • +
+

+ Create calls the inherited method using aCollection as rthe owner of the colleciton item. An exception is raised if ACollection is not a TCoolBands descendant. +

+

+ The internal TCoolBar reference in the class instance is set to the reference used in aCollection. +

+

+ Create allocates resource needed for the Bitmap property, and sets its OnChange event handler to the InvalidateCoolBar method. +

+
@@ -13158,28 +14437,40 @@ Destructor for the class instance - + +

+ Frees resources allocated for the Bitmap property, and calls the inherited destructor. +

+
- + - + + TPersistent.Assign + - + Persistent object with property values loaded in the method - + Gets the width needed for the band when its Control is auto-sized - - + + Causes the parent control to be redrawn when the collection item is changed + + +

+ Calls the inherirted Changed method to update the current collection item, and to notify the parent control of a change to the collection. +

+
@@ -13187,145 +14478,183 @@ - - + Height needed for the band and its visual elements + +

+ Height is a read-only Integer property with the height needed for the band and its visual elements including the Control. The value in Height is updated when the TCoolBar instance calls its CalculateAndAlign method, which occurs when the Update method for the collection is called. +

+
- - + Left coordinate for the band + +

+ Left is a read-only Integer property with the horizontal coordinate for the band. Its value is relative to corresponding coordinate in the TCoolBar control. The value is assigned when the CalculateAndAlign method in the TCoolBar control is called, which occurs when the Update method for the collection is called. +

+
- + Right coordinate for the band - + Top coordinate for the band - + Bitmap image displayed for the band - - + Border style drawn around the band + +

+ The default value for the property is bsNone, and indicates that borders are not drawn around the band. +

+
- + + Indicates whether the band starts a new row (or column) in the TCoolBar control + - - + Color for the band + +

+ The default value for the property is clDefault. Please note that the default value for ParentColor is True, and causes the color defined for the TCoolBar control to be used. +

+
- - + Control displayed on the band + +

+ Setting a new value for the property causes the Collection for the class to be updated. The existing control on the band is Nil'd anf the nwe value is assigned. The Parent property in the control is set to the TCoolBar instance. +

+
- + Indicates if a fixed background is drawn for the band - + Indicates whether the band is drawn with a fixed size - + Indicates if the band is limited to the horizontal orientation - - + Ordinal position for the image displayed for the band + +

+ Contains ordinal position in the TCoolBar.Images property with the image for the band. +

+
- + Minimum height for the band - + Minimum width for the band - + + Indicates if the Color in the Parent control (TCoolBar) is used for the band + - + + Indicates if the Bitmap in the TCoolBar control is used as the background for the band + - + Text displayed as an identifier for the band - + Indicates if the band is visible - + Width for the band - + Implements a collection for TCoolBand items - TCoolBands is a TCollection descendant. +

+ TCoolBands is a TCollection descendant used to store TCoolBand instances used the TCoolBar control. TCoolBands is the type used for the TCoolBar.Bands property. +

- + + + + TCollection +
- + Gets the value for the indexed Items property - + + + - + Value for the indexed property - + Ordinal position for the collection item in the property value @@ -13413,19 +14742,34 @@ - - + Provides indexed access to the TCoolBand instances in the collection + +

+ Items is a TCoolBand property which provides indexed access to the class instances in the collection. Values in the collection are accessed by their ordinal position. +

+

+ Items is the default property for the collection. +

+

+ Use Add to create a new TCoolBand instance in the collection. +

+

+ Use Delete and Clear to remove one or all items in the collection. +

+
- Default property for the collection + Ordinal position for the collection item - + Not used in the current LCL implementation - BandMaximize is not used now but is needed for Delphi compatibility. - It is not used in Delphi's TCoolBar implementation either. +

+ BandMaximize is not used now but is needed for Delphi compatibility. + It is not used in Delphi's TCoolBar implementation either. +

@@ -13440,11 +14784,26 @@
- + Implements a Rebar-like control with resizable bannds - TCustomCoolBar is a TToolWindow descendant. +

+ TCustomCoolBar is a TToolWindow descendant which implements a control like the Windows Rebar control. It provides a collection of windowed controls which are displayed in movable, resizable bands. +

+

+ Each band (or TCoolBand) on the control can have a configurable sizing grip (or grabber), a bitmap, a text label, and a single windowed control. The CoolBar handles the size and position for the control when its band is moved. Each band can have a fixed size, or can automatically re-size to the contained control. Bands can be displayed one band per line, or re-sized and positioned to fill the available width or height for the CoolBar control. +

+

+ A common use case is hosting multiple toolbars in an application. Separate TTooolbar instance are created and configured with event handlers or actions as needed. Each toolbar is assigned as the control for a band. A perfect example is the Lazarus IDE, which uses TCoolbar to host the file, view and run toolbars in its interface. +

+

+ Do not create instances of TCustomCoolBar; use the TCoolBar descendant which sets the visibility for the properties in the control. +

- + + + + +
@@ -13466,16 +14825,18 @@ - + Gets the value for the Align property - + + + - + Value for the property - + Determines if a band should wrap during alignment @@ -13490,30 +14851,36 @@ - + Sets the value for the BandBorderStyle property - + + + - + New value for the property - + Sets the value for the Bands property - + + + - + New value for the property - + Sets the value for the Bitmap property - + + + - + New value for the property @@ -13524,7 +14891,6 @@ - @@ -14042,10 +15408,11 @@ - + Horizontal space reserved between visual elements in the control - HorizontalSpacing is an Integer property. - The default value for the property is cDefHorSpacing. +

+ HorizontalSpacing is an Integer property with the space reserved between visual elements in the control when the horizontal orientation is used. The default value for the property is defined in the cDefHorSpacing constant. +

@@ -14057,37 +15424,39 @@
- + Width for the Images used in the control - + Indicates that text captions are displayed on the bands in the control - + Enables themed rendering for the control - + Indicates if control is displayed vertically instead of horizontally - + Vertical space reserved between visual elements in the control - + + Event handler signalled when Bands are re-sized or re-ordered using the mouse + @@ -14169,12 +15538,11 @@
- - + Represents the horizontal orientation - + Represents the vertical orientation @@ -14406,7 +15774,7 @@ - + @@ -14460,13 +15828,13 @@ - + - + @@ -14585,7 +15953,7 @@ - + @@ -14630,322 +15998,64 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -14954,45 +16064,81 @@ - - TNodeState - enumerated type denoting the status of a TreeNode - + Enumerated type denoting the state for a TreeNode

- Cut, DropHilited, Focused, Selected, MultiSelected, Expanded, HasChildren, Deleting, Bound. + TNodeState is an enumerted type with values representing the state a tree node. The values reflect the settings in property values in a TTreeNode instance, or the use a node in a tree structure. Value(s) from the enumeration are stored in the TNodeStates type.

- + + + +
- + Cut has been set in the the TTreeNode - + DropTarget has been set in the TTreeNode - + Focused has been set in the TTreeNode - + Selected has been set in the TTreeNode - + MultiSelected has been set in the TTreeNode - + Expanded has been set in the TTreeNode - + HasChildren has been set in the TTreeNode + + + Deleting has been set in the TTreeNode + + + Visible has been set in the TTreeNode + + + The tree node is bound to a tree (has a Parent) or is a top-level node - - TNodeStates - set of TNodeState - + Set type used to store TNodeState value(s) + + TNodeStates is a set type used to store zero or more values from the TNodeState enumeration. TNodeStates is the type used to implement the TTreeNode.States property. + + + + + + + + + + Add as the last sibling in a destination + + + Add as the first sibling in a destination + + + Add as the last child in a destination + + + Add as the first child in a Destination + + + Insert as the prior sibling for the specified node + + + Insert as the next sibling for the specified node + @@ -15015,33 +16161,45 @@ - + Represents available multi-select styles - + + + + - Allow to select one additional item by Ctrl+click. + + Enables multi-select using Ctrl+Click to select an additional item + - Allows selection of a range of items (from previous current item to clicked one) using Shift+Click. + Enables multi-select for a range of items from the current selection using Shift+Click - When selecting a range with Shift+click, select only visible (unfolded) items. + Enables multi-select for visible (expanded) items only using Shift+Click - When selecting a range with Shift+click, touch only siblings of previous current item. + Enables range multi-select for sibling items using Shift+Click - - - + Set type used to store value(s) from TMultiSelectStyles + +

+ TMultiSelectStyle is a set type used to store zero or more values from the TMultiSelectStyles enumeration. TMultiSelectStyle is the type used to implement the TCustomTreeView.MultiSelectStyle property. +

+
+ + + +
@@ -15053,51 +16211,75 @@ - - ETreeNodeError - exception type for errors arising from the code of TTreeNode - + Exception type raised for an error retrieving a tree node + +

+ ETreeNodeError is an Exception descendant with the base exception type raised for errors that occur when TTreeNode instances are retrieved. It is the ancestor for the ETreeViewError exception. +

+
+ + + +
- - ETreeViewError - exception type for errors arising from the code of TTreeView - + Exception tytpe raised for errors in a tree view + +

+ ETreeViewError is a ETreeNodeError descendant and the exception raised for errors in a tree structure. +

+
+ + + +
- - - + + Represents reason codes passed to event handlers when a tree node has been changed + + +

+ TTreeNodeChangeReason is an enumerated type with values that represent the reason code passed to event handlers when a tree node has been changed. TTreeNodeChangeReason is passed as an argument to the TTVNodeChangedEvent event handler. +

+
+ + + + +
- The Node's Text has changed + The Node Text has changed - The Node's Data has changed + The Node Data has changed - The Node's Height has changed + The Node Height has changed - The Node's Image Effect has changed + The Node Image Effect has changed - The Node's Image Index has changed + The Node Image Index has changed - The Node's Parent has changed + The Node Parent has changed - The Node's Visibility has changed + The Node Visibility has changed - The Node's Overlay Index has Changed + The Node Overlay Index has changed - The Node's State Index has Changed + The Node State Index has changed - The Node's Selected Index has Changed + The Node Selected Index has changed @@ -15108,13 +16290,20 @@ - TTVChangingEvent - a generic event handling method for changing a specified Tree Node if AllowChange is True + Specifies an event handler signalled when a tree node is about to be changed - - + +

+ TTVChangingEvent is an object procedure type which specifies an event handler signalled when a tree node is about to be changed. TTVChangingEvent is the type used to implement the TCustomTreeView.OnChanging property. +

+
+ + + +
- + Object for the event notification @@ -17353,7 +18542,7 @@ - + @@ -18226,15 +19415,19 @@ - + Default value for the MultiSelectStyle property in TCustomTreeView - + + + - + Default value used as the height for a TTreeNode instance - + + + @@ -18379,30 +19572,38 @@ - + Implements the OnTimer event handler for the internal Drag/Scroll timer - + + + TTimer.OnTimer + - + Timer object for the event notification - + Performs actions needed when the control Canvas has been changed + + Cannot find any place where this is actually assigned or called. + - + Gets the value for the AutoExpand property - + + + - + Value for the property @@ -18966,30 +20167,36 @@ - + Sets the value for the TreeLineColor property - + + + - + New value for the property - + Sets the value for the Items property - + + + - + New value for the property - + Sets the value for the TopItem property - + + + - + New value for the property @@ -19105,7 +20312,7 @@ - + @@ -19149,7 +20356,7 @@ - + @@ -19356,7 +20563,7 @@ TSize instance with the Width and Height for an icon - + @@ -19557,13 +20764,13 @@ - + - +

Click is an overridden method in TCustomTreeView. It calls the inherited method when a tree node has been selected using a mouse down event. No actions are performed in the method when a tree node has not been selected using the mouse. @@ -19574,7 +20781,7 @@ - +

DblClick is an overridden method in TCustomTreeView. It calls the inherited method when a tree node has been double clicked using the mouse. No actions are performed in the method when a tree node has not been selected and a double click event occurs. @@ -19585,7 +20792,7 @@ - + @@ -19593,7 +20800,7 @@ - + @@ -19612,7 +20819,7 @@ - + @@ -19627,7 +20834,7 @@ - + @@ -19642,7 +20849,7 @@ - + @@ -19693,7 +20900,7 @@ - + @@ -19702,7 +20909,7 @@ - + @@ -19775,13 +20982,13 @@ - + - + @@ -19793,13 +21000,13 @@ - + - + @@ -19817,7 +21024,7 @@ - + @@ -19832,7 +21039,7 @@ - + @@ -19868,7 +21075,7 @@ - + @@ -19880,7 +21087,7 @@ - + @@ -19898,7 +21105,7 @@ - + @@ -19970,7 +21177,7 @@ - + @@ -19997,7 +21204,7 @@ - + @@ -20052,7 +21259,7 @@ - + @@ -20457,7 +21664,7 @@ - + @@ -20548,7 +21755,7 @@ - + @@ -20812,7 +22019,7 @@ - + @@ -20858,7 +22065,7 @@ Size of expand/collapse (fold/unfold) symbol. -

Use 0 for auto-sized value.

+

Use 0 for the auto-sized value.

@@ -20947,48 +22154,54 @@
- - + Number of selected nodes in the tree view + +

+ SelectionCount is a read-only Cardinal property with the number of selected Items in the control. SelectionCount contains the value from the SelectionCount property in Items, and indicates the number of TTreeNode instances available in the Selections property. +

+
- Color used to paint text of selected item. + Color used to draw the text for a selected item - - + Indicates if the selection font color is used for selected items + +

+ The default value for the property is False. Not used in the current LCL implementation. +

+
- + Provides indexed access to selected tree nodes in the control - + Ordinal position in the list of selected tree nodes - Color used to paint horizontal lines between items, separators. + Color used to paint horizontal lines between tree nodes - - TImageList object which holds icons for tree-item states: normal item, selected item, etc. - + Image list which holds state icons for tree nodes - + Width for the state icons in the StateImages property @@ -21020,7 +22233,7 @@
- + @@ -21041,25 +22254,25 @@ - - + + - + - - - - + + + + - - - - + + + + - + @@ -21067,10 +22280,10 @@ - - - - + + + + @@ -21080,81 +22293,81 @@ - + - - - + + + - + - + - + - + - - + + - - - + + + - - - - - - - - - - - - - - + + + + + + + + + + + + + + - + - - - + + + - + Specifies an event handler used to get the text for a tree node - + Text displayed for the tree node - + Tree node examined in the routine @@ -21166,14 +22379,14 @@ TTreeNodeExpandedState is a class used to save and restore the expanded state of a TTreeView. The nodes are identified by their Text property.

Usage example:

- - // save old expanded state - OldExpanded := TTreeNodeExpandedState.Create(ATreeView); - // ... change a lot of nodes ... - // restore old expanded state - OldExpanded.Apply(ATreeView); - OldExpanded.Free; - + +// save old expanded state +OldExpanded := TTreeNodeExpandedState.Create(ATreeView); +// ... change a lot of nodes ... +// restore old expanded state +OldExpanded.Apply(ATreeView); +OldExpanded.Free; +
@@ -21411,13 +22624,13 @@ - Ensures that the width for the section is with its minimum and maximum values + Ensures that the width for the section is within its minimum and maximum values - + @@ -21584,7 +22797,7 @@ Item updated in the collection - + Constructor for the class instance @@ -21593,7 +22806,7 @@ Owner of the collection - + Creates a new header section and adds it to the collection Adds calls the AddItem method to get the return value for the method. @@ -21619,7 +22832,7 @@ - + Insert a new collection item at the specified position in the collection @@ -21631,7 +22844,7 @@ - + Deletes the collection item stored at the specified position in the collection @@ -21840,9 +23053,9 @@ - + - + @@ -21916,11 +23129,11 @@ - - - - - + + + + + @@ -21993,8 +23206,8 @@
- - + + @@ -22010,7 +23223,7 @@ - + @@ -22023,7 +23236,7 @@ - + @@ -22122,47 +23335,47 @@
- - - - - - - - - - + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/xml/lcl/forms.xml b/docs/xml/lcl/forms.xml index d2d32602ec..7948225c13 100644 --- a/docs/xml/lcl/forms.xml +++ b/docs/xml/lcl/forms.xml @@ -7601,7 +7601,12 @@

- Destroy calls RaiseGDBException to raise an exception if the current class instance is unassigned (contains Nil). Uses the exception message 'TApplication.Destroy Self=nil'. +

+ Destroy calls RaiseGDBException to raise an exception if the current class instance is unassigned (contains Nil). Uses the exception message 'TApplication.Destroy Self=nil'. +

+

+ Raises an EAssertFalied exception if the CustomApplication and Application variables do not contain the same TCustomApplication instance. +

diff --git a/docs/xml/lcl/maskedit.xml b/docs/xml/lcl/maskedit.xml index ef69172fec..2b47174989 100644 --- a/docs/xml/lcl/maskedit.xml +++ b/docs/xml/lcl/maskedit.xml @@ -22,7 +22,7 @@
- + @@ -41,126 +41,124 @@ After this you can set an arbitrary char - - + + After this the chars are in upper case - - + + After this the chars are in lower case - - + + Can contain an optional letter only - - + + Must contain a letter only - - + + An optional alphanumeric character ['A'..'Z','a..'z','0'..'9'] - + A required alphanumeric character ['A'..'Z','a..'z','0'..'9'] - + An optional UTF-8 character Any UTF-8 character in the range #32 to #255 - + A required UTF-8 character Any UTF-8 character in the range #32 to #255 - + An optional numeric character In the range '0' to '9' - + A required numeric character In the range '0' to '9' - + An optional numeric or sign character Includes the characters: 0,1,2,3,4,5,6,7,8,9,+, and - - + Inserts the hour separator char - - + + Inserts the date separator character - - + + An optional hexadecimal character (['0'..'9','a'..'f']). A Lazarus extension, not supported in Delphi. - + A required hexadecimal character (['0'..'9','a'..'f']). A Lazarus extension, not supported in Delphi. - + An optional binary character ['0'..'1']. A Lazarus extension, not supported in Delphi. - + A required binary character ['0'..'1']. A Lazarus extension, not supported in Delphi. - + Causes leading blanks to be trimmed from the value Trailing blanks are trimmed by default. - + - Represents a blank character value in a mask Can be changed at run-time. - Delimiter used between fields in a mask Can be changed at run-time. @@ -177,7 +175,10 @@ Enumeration with values representing mask character types

- TMaskType is an enumerated type which contains values representing mask character types used in TCustomMaskEdit and TMaskEdit. Mask character types control the letters, numbers, literals, space characters, and trimming options allowed for each position in a masked edit control. TMaskType values are stored in the TInternalMask type used in the implementation of TCustomMaskEdit. + TMaskType is an enumerated type which contains values representing mask character types used in TCustomMaskEdit and TMaskEdit. Mask character types control the letters, numbers, literals, space characters, and trimming options allowed for each position in a masked edit control. +

+

+ TMaskType values are stored in the TInternalMask type, and used in the implementation of TCustomMaskEdit.

@@ -185,121 +186,142 @@
- - + + Character is a literal - + Character is an optional numeric value 0..9 - + Character is a required numeric value 0..9 - + Character is an optional numeric value 0..9, +, - - + Character is an optional alphabetic value - + Character is a required alphabetic value - + Character is an optional uppercase alphabetic value - + Character is an optional lowercase alphabetic value - + Character is a required uppercase alphabetic value - + Character is a required lowercase alphabetic value - + Character is an optional alphabetic or numeric value - + Character is a required alphabetic or numeric value - + Character is an optional uppercase alphabetic or numeric value - + Character is an optional lowercase alphabetic or numeric value - + Character is a required uppercase alphabetic or numeric value - + Character is a required lowercase alphabetic or numeric value - + Any optional UTF-8 character - + Any required UTF-8 character - + Any optional uppercase UTF-8 character + - + Any optional lowercase UTF-8 character - + Any required uppercase UTF-8 character - + Any required lowercase UTF-8 character - + Character is the time separator character - + Character is the date separator character - - Lazarus extension, not supported by Delphi. + Character is an optional hexadecimal digit + + Lazarus extension, not supported by Delphi. + - + Character is a required hexadecimal digit Lazarus extension, not supported by Delphi. - + Lazarus extension, not supported by Delphi. - + Character is an optional lowercase hexadecimal digit Lazarus extension, not supported by Delphi. - + Character is a required uppercase hexadecimal digit Lazarus extension, not supported by Delphi. - + Character is a required lowercase hexadecimal digit Lazarus extension, not supported by Delphi. - + Character is an optional binary value 0..1 Lazarus extension, not supported by Delphi. - + Character is a required binary value 0..1 Lazarus extension, not supported by Delphi. - - + + + Represents the type and literal used for a character in an edit mask + +

+ TIntMaskRec is a record type with members that represent the types and literal used for a character in TCustomMaskEdit. TIntMaskRec instances are stored in the TInternalMask array type, and used in the implementation of the TCustomMaskEdit control. +

+
+ + + + + + +
+ + Identifies the type for the mask character + + + Contains the literal displayed for the mask character - Array type used to represent an edit mask in TCustomMaskEdit + Array type used to represent edit mask symbols in TCustomMaskEdit

- TInternalMask is an array type which contains up to 255 UTF-8-encoded character values. It is used to implement internal members in TCustomMaskEdit, and exposed as its EditMask property. + TInternalMask is an array type which contains up to 255 TIntMaskRec values representing mask character used in a TCustomMaskEdit control. It is used to implement internal members in TCustomMaskEdit, and realized using its EditMask property.

@@ -327,7 +349,6 @@
- Exception class raised for an error in a masked edit control @@ -372,13 +393,12 @@ Message displayed in the EInvalidCodePoint exception - + - Ancestor for TMaskEdit @@ -416,7 +436,7 @@ Length of the internal mask - First position where user can enter text + First position where user can enter text (1-based) Save mask as part of the data? @@ -434,7 +454,7 @@ Text when user enters the control, used for Reset() - Current caret position + Current caret position (0-based) @@ -448,31 +468,31 @@ EditMask set in the form designer (must be handled in Loaded) - + Flag used in DoEnter - + - + - + - + - + Fills the specified mask with Null characters (decimal 0) - - + + Mask updated in the method @@ -481,23 +501,34 @@ Set to zero (0) to indicate that the mask is empty + - Appends the specified UTF-8 character to the internal mask value + + Appends the specified mask character type or literal to the internal mask in the control +

- AddToMask is a procedure used to append the UTF-8 character in Value to the internal mask for the edit control. AddToMask increments the internal counter which tracks the length of the mask value, and stores Value at the end of the TInternalMask instance. + AddToMask is an overloaded procedure used to append a mask character to the internal mask for the edit control. The overloaded variants allow the mask character to be specified as a TMaskedType enumeration value or a UTF-8-encoded character literal.

- Used in the implementation of the SetMask procedure which sets the value for the EditMask property. + AddToMask increments the length counter for the internal mask, and stores the specified value in the TInternalMask instance. When ALiteral is used for the mask character, the TIntMaskRec.MaskType member is set to Char_IsLiteral. When AMaskType is used, the TIntMaskRec.Literal member is set to an empty string (''). +

+

+ AddToMask is called from the private SetMask method, and occurs when a new value is assigned to the EditMask property. SetMask clears and reconstructs the internal TInternalMask member with the character classes and literals used in the edit mask.

+ +
- - UTF-8 character appended to the mask for the edit control + + UTF-8 character literal appended to the mask for the edit control + + + Enumeration value representing the mask character class @@ -513,7 +544,11 @@ Sets the value for the EditMask property - + +

+ Re-initializes the internal TInternalMask instance with the mask character classes and literals used in the EditMask. +

+
@@ -570,7 +605,7 @@ SetCursorPos is used in the implementation of methods which respond to keyboard or mouse navigation, or when the value in the control is changed and/or validated.

- +
@@ -600,21 +635,21 @@ Used in the implementation of the KeyDown method.

- +
Selects the first character in the edit control

+ SelectFirstChar is a procedure used to move to and select the first character in the edit control. SelectFirstChar sets the value for the internal member used to track the cursor (or caret) position, and calls SetCursorPos to update the cursor in the control.

- SelectFirstChar is a procedure used to move to and select the first character in the edit control. SelectFirstChar sets the value for the internal member used to track the cursor (or caret) position, and calls SetCursorPos to update the cursor in the control.
- +
- +

GotoEnd is a procedure used to set the caret (or cursor) to the last position in the edit control. GotoEnd updates the internal member used to track the cursor position, and calls the SetCursorPos method to apply the cursor position to the control. @@ -623,7 +658,7 @@ Used in the implementation of the KeyDown method.

- +
@@ -644,7 +679,7 @@ JumpToNextDot is used in the implementation of the HandleKeyPress method.

- +
Character to locate in the edit mask for the control @@ -657,7 +692,7 @@ HasSelection is a Boolean function which indicates if any characters are currently selected in the edit control. The return value is True when GetSelLength returns a value greater than one (1).

- +
True when characters are selected at the caret position @@ -672,84 +707,19 @@ Influences handling of the Backspace key. In addition, the InsertChar method will delete an extended selection prior to inserting a new character value.

- +
True when the current selection in the control is more than one character - - Transforms the specified UTF-8 character to a TMaskType enumeration value - -

- CharToMask is a TMaskedType function used to transform the UTF-8-encoded character in UCh to a value from the TMaskedType enumeration. UCh cannot contain a multi-byte UTF-8 value; it must be a single byte value. No actions are performed in the method when UCh contains multiple byte values in the UTF-8 code point. The ordinal value for the character is used to get the corresponding TMaskedType enumeration value used as the return value for the method. -

-

- CharToMask is used in the implementation of the following methods: -

-
    -
  • IsMaskChar
  • -
  • SetSpaceChar
  • -
  • IsLiteral
  • -
  • CharMatchesMask
  • -
  • ClearChar
  • -
  • CanInsertChar
  • -
-
- -
- - TMaskType value for the specified character - - - UTF-8 character examined in the method - - - + - Transforms the specified TMaskType enumeration value into a character for use in TInternalMask + Indicates whether the mask value at the specified position is a mask literal

- MaskToChar is a Char function used to transform the specified TMaskType enumeration value into a character for use in the internal TInternalMask instance in the control. The return value from MaskToChar is passed as an argument to the AddToMask method to populate the TInternalMask for the control. -

-

- MaskToChar is used (along with AddToMask) in the implementation of the SetMask method (the write access specifier for the EditMask property). -

-
- -
- - Character value to add to the internal mask structure for the control - - - TMaskType enumeration value converted in the method - - - - Indicates whether the specified character is a valid mask character - -

- IsMaskChar is a Boolean function used to determine if the UTF-8 character in Ch is a valid mask character. Ch contains one the characters values from the TInternalMask used in the control. IsMaskChar returns True when the value in Ch is any of the TMaskType values other than Char_Start. -

-

- IsMaskChar is used in the implementation of methods like IsLiteral and SetSpaceChar. -

-
- -
- - True when the character is a mask type character other than Char_Start - - - Mask type character examined in the method - - - - Indicates whether the specified character is a mask literal - -

- IsLiteral is a Boolean function which indicates whether the UTF-8 character in Ch represents a mask literal which cannot be edited in the control. The return value is False for any of the following conditions: + IsLiteral is a Boolean function which indicates whether the Integer vaule in Index represents a mask literal which cannot be edited in the control. The return value is False for any of the following conditions:

  • @@ -763,13 +733,13 @@ IsLiteral is used in the implementation of methods like SetMask, SetSpaceChar, SelectNextChar, SelectPrevChar, JumpToNextDot, and SetEditText.

    - + - + - - + + @@ -797,18 +767,27 @@

    - CharMatchesMask is a Boolean function used to determine if a character in the value for the control is valid for its EditMask. Ch contains the UTF-8 character examined in the method. Position contains the offset into the EditMask for the mask character compared in the method. + CharMatchesMask is a Boolean function used to determine if a character in the value for the control is valid for its EditMask. Ch contains the UTF-8 character examined in the method.

    - Position is in the range 1..MaxLength. When Position is not in this range, no actions are performed in the method and the return value is set to False. + Position contains the offset into the EditMask for the mask character compared in the method. Position is in the range 1..MaxLength. When Position is not in this range, no actions are performed in the method and the return value is set to False.

    - CharMatchesMask calls CharToMask to convert the mask character at Position to a TMaskType enumeration value which determines if the value in Ch is valid. The return value is True when Ch contains a valid character value for the mask character type. + CharMatchesMask uses the internal TInternalMask instance to examine the mask definition at the specified position. The value in Ch is compared to the allowed values for the mask character type in the definition. +

    +

    + If an unrecognized mask character type is found in the in the EditMask, an EDBEditError exception is raised. I'm sure there is a reason for raising a database exception, but there is no indication why it was chosen. +

    +

    + The return value is True when Ch contains a valid character value for the mask character type.

    CharMatchesMask is used in the implementation of the TextIsValid method.

    + + Raises an EDBEditError exception if an invalid mask literal is used in the EditMask. + @@ -834,6 +813,7 @@

    Fixed literals, like date or time separators, and escaped characters are ignored in the method. For Delphi compatibilty, only literals remain; all other character values are replaced with the character designated in the SpaceChar property.

    + Raises an EDBEditError exception. @@ -844,10 +824,10 @@
    - + - + @@ -887,7 +867,7 @@ InsertChar is a procedure used to insert the specified UTF-8 character at the current position for the cursor.

    - Ch contains the UTF-8 character stored at the cursor (or caret) position. InsertChar calls CanInsertChar to determine if the value in Ch is valid for the mask character at the cursor position. If CanInsertChar returns False, the current selection in the control is deleted (done for Delphi compatibility). + Ch contains the UTF-8 character stored at the cursor (or caret) position. InsertChar calls CanInsertChar to determine if the value is valid for the mask character at the cursor position. If CanInsertChar returns False, the current selection in the control is deleted (done for Delphi compatibility).

    If the character is valid for the mask position, any selected characters in the control are replaced with blank values by calling SetCodePoint with the value from ClearChar. SetCodePoint is also called to store Ch at the current position in the text value. RealSetTextWhileMasked is called to notify the control of the change to its Text value. SelectNextChar is called to advance the cursor position to the next available position in the control (when available). @@ -908,8 +888,8 @@ Indicates if the specified character can be inserted at a given position in the control - - + + True when the character is valid for the mask character type @@ -939,7 +919,7 @@ Please note: No actions are performed in the method when HasSelection returns False. - + @@ -949,7 +929,7 @@ The number of characters affected in the method is determined by the value from HasSelection. When True, the current selection is control is affected. When False, a single character value is deleted.

    - +
    @@ -961,8 +941,8 @@ Registers the widget set class reference used to create new instances of the control - - + + @@ -1053,13 +1033,13 @@ The resulting text will always have length defined for the TInternalMask type used in the control. The new text value does not have to pass validation.

    - +
    - + - + @@ -1076,7 +1056,7 @@
    - + @@ -1089,7 +1069,7 @@ Use RestoreMask to re-enable the saved edit mask for the control.

    - +
    @@ -1110,7 +1090,7 @@ In either circumstance, the value in NewText is assigned as the value for the Text property in the control.

    - +
    True on success @@ -1132,7 +1112,7 @@ RealSetText uses the value from IsMasked to determine if an edit mask is used for the control. When False, the inherited RealSetText method is called to set the value in the Text property. When True, the SetTextApplyMask method is called to store the content in AValue guided by the EditMask for the control.

    - +
    Value stored in the text for the control @@ -1140,48 +1120,48 @@ Gets the value for the Text in the control - - + + - + Gets the raw value for the control without formatting applied by an edit mask - - + + - + - + Gets the value for the control without Space characters inserted by an edit mask - - + + - + - + Sets the value for the control after applying its edit mask - - + + - + @@ -1205,7 +1185,7 @@ Please note: This method is not Delphi compatible, but it is by design. Delphi allows setting the EditText to any length, which is extremely dangerous! This method ensures that the text assigned in the control does not exceed the length specified by its edit mask. - + New value applied to the Text in the control @@ -1218,7 +1198,7 @@ GetSel finds the starting and ending positions for the selected text in the control. Calls GetSelStart to get the value for the _SelStart argument. Calls GetSelLength to get the number of characters selected, and calculates the value for _SelStop. - + Stating position for the text selected in the control @@ -1243,7 +1223,7 @@ - +

    TextChanged is an overridden procedure used to respond to a change in the value for the Text property. Its purpose is to avoid leaving the control in an invalid state when: @@ -1413,7 +1393,7 @@ Performs actions needed when the control is exited - + TCustomEdit.DoExit @@ -1423,14 +1403,51 @@ Performs actions needed to apply key down messages

    - Calls the inherited KeyDown method. If an edit mask is not assigned in the control, no additional actions are required in the method. If Key and Shift are extended selection navigation keys, no additional actions are required; i. e. Shift+Left, Shift+Right, Shift+Home, Shift+End. + Calls the inherited KeyDown method. If an edit mask is not assigned in the control, no additional actions are required in the method.

    - KeyDown ensures that the value in the control is reset to its value on entry when Key is the Escape key. KeyDown provides support for clipboard operations, as well as the Delete and Backspace keys. -

    -

    - KeyDown handles Ctrl navigations keys as if they were the unmodified variant of the key; i. e. Ctrl+Left, Ctrl+Right, Ctrl+Home, Ctrl+End. Please note that the Ctrl+Up and Ctrl+Down key and modifier are not valid in TCustomMaskEdit; the keystroke is digested. + KeyDown handles the following keys, and performs the following actions:

    +
    +
    Shift + Left, Shift + Right, Shift + Home, Shift + End
    +
    Ignored
    +
    Escape
    +
    Resets text to the un-edited value
    +
    Shift + Delete
    +
    Cuts selection to the clipboard
    +
    Ctrl + Delete
    +
    Deletes the current selection
    +
    Delete
    +
    Deletes the character at the cursor position
    +
    Ctrl + Backspace
    +
    Deletes the current selection
    +
    Shift + Backspace
    +
    Cuts the current selection to the clipboard
    +
    Backspace
    +
    Deletes the character prior to cursor position
    +
    Shift + Insert
    +
    Paste from the clipboard
    +
    Ctrl + Insert
    +
    Copy to the clipboard
    +
    Ctrl + C
    +
    Copy to the clipboard
    +
    Ctrl + X
    +
    Cut to the clipboard
    +
    Ctrl + V
    +
    Paste from the clipboard
    +
    Ctrl + Left, Left
    +
    Select the previous character
    +
    Ctrl + Right, Right
    +
    Selects the next character
    +
    Home
    +
    Move to the first character in the control
    +
    End
    +
    Move to the end of the control
    +
    Up, Down
    +
    Ignored
    +
    Ctrl + A
    +
    Selects all of the text in the control
    +
    TWinControl.KeyDown @@ -1443,6 +1460,28 @@ Key modifier examined in the method
    + + Handle all keys from KeyPress and Utf8KeyPress + +

    + HandleKeyPress is a method used to handle keys forwarded from the KeyPress and UTF8KeyPress methods. No actions are performed in the method if the control is ReadOnly, or IsMasked returns False. +

    +

    + HandleKeyPress set the cursor position to the start of the current selection in the control. If the cursor is on a mask literal, it is advanced to the next writable position. +

    +

    + When Key is a Period ('.') or a Comma (',') character, the cursor is advanced to the next Period or Comma character in the mask. For other character values, the InsertChar method is called. +

    +

    + The value in Key is set to an empty string ('') when it is handled in the method. +

    +
    + +
    + + Character value for the key examined in the method + + Performs actions needed to handle the specified character in the control @@ -1511,7 +1550,7 @@ - isMasked is True if the text is masked + isMasked is True if a non-empty value has been assigned to EditMask @@ -1519,10 +1558,29 @@ - SpaceChar is the character that is to be used as a Space character + Contains the value used to represent Space (#32) characters in the edit mask - - + +

    + SpaceChar is a Char property with the value used to represent Space (text) characters in the value for the control. It corresponds to the '_' character used the mask fields. +

    +

    + When a Space character is found in the text for the control, or a value has not been provided for a masked character position, it is replaced with this character. +

    +

    + The default value for the property is '_'. +

    +

    + Setting a new value for the property causes the existing text in the control to be updated. All occurrences of the existing SpaceChar are converted to the new value for the property, and stored as the new text for the control. The cursor position and text selection are updated when the text is stored. +

    +

    + SpaceChar is not used when EditMask is an emtpy string (''), or IsMasked is False. +

    +
    + + + +
    @@ -1544,99 +1602,103 @@ - EditMask - the sequence of characters used to obscure the string being typed (typically a sequence of asterisks) + Contains the mask characters classes and literals used to format/obscure the value for the control

    - EditMask is a String property which contains the mask specification for the edit control. EditMask contains the delimited mask fields with the character types, storage specifier, and the character used to represent a space in the edit mask. For example: + EditMask is a String property which contains the mask specification for the edit control. EditMask contains the delimited mask fields with the character types, storage specifier, and the character value used to represent a space in the edit mask. For example:

    AMaskEdit.EditMask := '999.999;1;0';

    - The EditMask is formed with a pattern of characters with the following meaning: + The EditMask is formed using a pattern of characters with the following meaning:

    - + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - - + + - + - - + + - - + + - - + + - - + + - + - - + + - + - - + +
    \ \ after this you can set an arbitrary char
    > after this the chars is in upper case>after this the characters are in in uppercase
    < after this the chars is in lower case<after this the character are in lowercase
    l only a letter but not necessarylonly an optional letter
    L L only a letter
    a an alphanumeric char (['A'..'Z','a..'z','0'..'9']) but not necessaryaan optional alphanumeric character (['A'..'Z','a..'z','0'..'9'])
    A an alphanumeric charAan alphanumeric character
    c any Utf8 char but not necessarycany optional Utf-8 character
    C any Utf8 char #32 - #255Cany Utf-8 character in the range #32-#255
    9 only a number but not necessary9only an optional number
    0 0 only a number
    # only a number or + or -, but not necessary#only an optional number or + or -
    : automatically put the hour separator char:displays the hour separator character
    / automatically put the date separator char/displays the date separator character
    h a hexadecimal character but not necessary (Lazarus extension, not supported by Delphi)h + an optional hexadecimal character (Lazarus extension, not supported by Delphi) +
    H H a hexadecimal character (Lazarus extension, not supported by Delphi)
    b a binary character but not necessary (Lazarus extension, not supported by Delphi)ban optional binary character (Lazarus extension, not supported by Delphi)
    B B a binary character (Lazarus extension, not supported by Delphi)
    ! Trim leading blanks, otherwise trim trailing blanks from the data! + Trim leading or trailing blanks, depending on position of the mask character +

    Setting a new value for the property causes the value to be decomposed into the internal TInternalMask representing the individual characters in the edit mask. Individual UTF-8 characters in Value are either added to the mask as literals or character types. Clear is called to remove the displayed value in the control, and the initial Text value is set to the value from RealGetText.

    - +
    @@ -1687,6 +1749,29 @@
    + + Selects all of the text in the masked edit control + +

    + SelectAll is an overridden method used to select all of the text in the masked edit control. SelectAll ensures that content formatted using the EditMask is handled in the method. +

    +

    + When IsMasked is True, the inherited RealGetText method is called to get the text content for the control. SelStart and SelLength are updated to use the values needed for the text content. The inherited method is not called. +

    +

    + When IsMasked is False, the inherited method is called to handle the text selection. +

    +
    + + + + TCustomEdit.RealGetText + TCustomEdit.SelectAll + TCustomEdit.SelStart + TCustomEdit.SelLength + +
    + Validates the value for the edit control when an EditMask has been specified @@ -1723,7 +1808,7 @@ Modified is a Boolean property which indicates if the value for the edit control has been changed. - + Discuss relationship between Text, EditText, RealSetText, et. al. @@ -2017,7 +2102,7 @@ - + Text is a public property in TMaskEdit which provides access to the value for the edit control. diff --git a/docs/xml/lcl/shellctrls.xml b/docs/xml/lcl/shellctrls.xml index 8fcb2781c3..2453cedd2e 100644 --- a/docs/xml/lcl/shellctrls.xml +++ b/docs/xml/lcl/shellctrls.xml @@ -444,9 +444,7 @@