From 49384e3efc9004af1ccca0d989285d3ee86a7a29 Mon Sep 17 00:00:00 2001
From: juha
+ Use Angles2Coords to convert an Eccentric (aka Radial) Angle and an Angle-Length, such as are used in X-Windows and GTK, into the coords, for Start and End Radial-Points, such as are used in the Windows API Arc Pie and Chord routines. The angles are 1/16th of a degree. For example, a full circle equals 5760 (16*360). Positive values of Angle and AngleLength mean counter-clockwise while negative values mean clockwise direction. Zero degrees is at the 3 o'clock position.
+
+ Use Arc2Bezier to convert an Arc and ArcLength into a Bezier Approximation of the Arc. The Rotation parameter accepts a Rotation-Angle for a rotated Ellipse'- for a non-rotated ellipse this value would be 0, or 360. If the AngleLength is greater than 90 degrees, or is equal to 0, it automatically exits, as Bezier cannot accurately approximate any angle greater then 90 degrees, and in fact for best result no angle greater than 45 should be converted, instead an array of Bezier's should be created, each Bezier describing a portion of the total arc no greater than 45 degrees. The angles are 1/16th of a degree. For example, a full circle equals 5760 (16*360). Positive values of Angle and AngleLength mean counter-clockwise while negative values mean clockwise direction. Zero degrees is at the 3 o'clock position.
+
+ Use BezierToPolyline to convert a 4-Point Bezier into a Pointer Array of TPoint and a Count variable which can then be used within either a Polyline, or Polygon routine. It is primarily for use within PolyBezier2Polyline. If Points is not initialized or Count is less then 0, it is set to nil and the array starts at 0, otherwise it tries to append points to the array starting at Count. Points should ALWAYS be Freed when done by calling to ReallocMem(Points, 0) or FreeMem.
+
+ Use BezierArcPoints to convert an Arc and ArcLength into a Pointer Array of TPoints for use with Polyline or Polygon. The Rotation parameter accepts a Rotation-Angle for a rotated Ellipse'- for a non-rotated ellipse this value would be 0, or 360. The result is an Approximation based on 1 or more Beziers. If the AngleLength is greater than 90 degrees, it calls PolyBezierArcPoints, otherwise it Converts the angles into a Bezier by calling to Arc2Bezier, and then converts the Bezier into an array of Points by calling to Bezier2Polyline. The angles are 1/16th of a degree. For example, a full circle equals 5760 (16*360). Positive values of Angle and AngleLength mean counter-clockwise while negative values mean clockwise direction. Zero degrees is at the 3'o clock position. If Points is not initialized or Count is less then 0, it is set to nil and the array starts at 0, otherwise it tries to append points to the array starting at Count. Points should ALWAYS be Freed when done by calling ReallocMem(Points, 0) or FreeMem.
+
+ Use Coords2Angles to convert the coords for Start and End Radial-Points, such as are used in the Windows API Arc Pie and Chord routines, into an Eccentric (aka Radial) counter clockwise Angle and an Angle-Length, such as are used in X-Windows and GTK. The angles angle1 and angle2 are returned in 1/16th of a degree. For example, a full circle equals 5760 (16*360). Zero degrees is at the 3 o'clock position.
+
+ Use EccentricAngle to get the Eccentric( aka Radial ) Angle of a given point on any non-rotated ellipse. It is primarily for use in Coords2Angles. The result is in 1/16th of a degree. For example, a full circle equals 5760 (16*360). Zero degrees is at the 3 o'clock position.
+
+ Use EllipseRadialLength to get the Radial-Length of non-rotated ellipse at any given Eccentric( aka Radial ) Angle. It is primarily for use in other routines such as RadialPoint. The Eccentric angle is in 1/16th of a degree. For example, a full circle equals 5760 (16*360). Zero degrees is at the 3 o'clock position.
+
+ Use LineEndPoint to get the End-Point of a line of any given Length at any given angle with any given Start-Point. It is primarily for use in other routines such as RadialPoint. The angle is in 1/16th of a degree. For example, a full circle equals 5760 (16*360). Zero degrees is at the 3 o'clock position.
+
+ Use BezierToPolyline to convert an array of 4-Point Bezier into a Pointer Array of TPoint and a Count variable which can then be used within either a Polyline, or Polygon routine. Points is automatically initialized, so any existing information is lost, and the array starts at 0. Points should ALWAYS be Freed when done by calling to ReallocMem(Points, 0).
+
+ Use PolyBezierArcPoints to convert an Arc and ArcLength into a Pointer Array of TPoints for use with Polyline or Polygon. The Rotation parameter accepts a Rotation-Angle for a rotated Ellipse'- for a non-rotated ellipse this value would be 0, or 360. The result is an Approximation based on 1 or more Beziers. If the AngleLength is greater than 45 degrees, it recursively breaks the Arc into Arcs of 45 degrees or less, and converts them into Beziers with BezierArcPoints. The angles are 1/16th of a degree. For example, a full circle equals 5760 (16*360). Positive values of Angle and AngleLength mean counter-clockwise while negative values mean clockwise direction. Zero degrees is at the 3'o clock position. Points is automatically initialized, so any existing information is lost, and the array starts at 0. Points should ALWAYS be Freed when done by calling to ReallocMem(Points, 0).
+
+ Use Quadrant to determine the Quadrant of any point, given the Center. It is primarily for use in other routines such as EccentricAngle. A result of 1-4 represents the primary 4 quadrants. A result of 5-8 means the point lies on one of the Axis', 5 = -Y Axis, 6 = +X Axis, 7 = +Y Axis, and 8 = -X Axis. A result of -1 means that it does not fall in any quadrant, that is, it is the Center.
+
+ Use RadialPoint to get the Radial-Point at any given Eccentric( aka Radial ) angle on any non-rotated ellipse. It is primarily for use in Angles2Coords. The EccentricAngle is in 1/16th of a degree. For example, a full circle equals 5760 (16*360). Zero degrees is at the 3 o'clock position.
+
+ Use SplitBezier to split any 4-Point Bezier into two 4-Point Beziers: a 'Left' and a 'Right'. It is primarily for use in Bezier2Polyline.
+
+ This Unit contains a number of routines for calculating and converting series of graphic points from one coordinate system to another.
+
+ A fundamental type is introduced, called TFloatPoint. It is an extended precision record containing an X and a Y coordinate for a graphic point. Its structure is as follows:
+
+ The unit contains definitions for mathematical operators which extend the normal definitions of addition, subtraction, multiplication, division and comparison to cover manipulations with TFloatPoints, allowing, for example, addition or multiplication of two TFloatPoints, a TFloatPoint and a TPoint, or a TFloatPoint and an Extended Precision number.
+
+ ComparePointers is an Integer function used to get the relative order for the specified Pointer values. The following return values are used in the routine:
+
+ GetEnumValueDef is an Integer function used to get the ordinal position in the specified enumeration type insformation for the value with the given name.
+
+ The return value contains the ordinal position in TypeInfo for the enumeration value with the given Name. GetEnumValueDef calls GetEnumValue to find the value in Name in the type information. If the return value is -1, an enumeration value with the specified name is not found in TypeInfo and the value in DefaultValue is used as the return value.
+
+ Calls Round to round the Extended value, and casts the result to the Integer type used as the return value.
+
+ Calls Round to round the Extended value, and casts the result to the Cardinal type used as the return value.
+
+ Calls StrToFloat to convert the value in s, and casts the result to the Double data type used as the return value.
+
+ ConsoleVerbosity is an Integer variable which indicates the level of detail output from tools like pas2js and CodeTools. ConsoleVerbosity enables debugger output for specific levels of detail.
+
- TAsyncProcess is a TProcessUTF8 descendant which implements support for asynchronous notifications when data is available for the process. Internally, TAsyncProcess uses pipe and process handlers to detect when data is written to the Output handle, and when the process is terminated. TAsyncProcess provides OnReadData and OnTerminate event handlers signalled for the corresponding asynchronous notifications.
+ TAsyncProcess is a TProcessUTF8 descendant which implements support for asynchronous notifications when data is available for the process. Internally, TAsyncProcess uses pipe and process handlers to detect when data is written to the Output handle, and when the process is terminated. TAsyncProcess provides OnReadData and OnTerminate event handlers signalled for the corresponding asynchronous notifications.
- GetNumBytesAvailable is a dword function used to get the value for the NumBytesAvailable property. The return value contains the value in Output.NumBytesAvailable, or 0 (zero) when Options does not include the value poUsePipes.
+ GetNumBytesAvailable is a dword function used to get the value for the NumBytesAvailable property. The return value contains the value in Output.NumBytesAvailable, or 0 (zero) when Options does not include the value poUsePipes.
- Use NumBytesAvailable to read the value for the property.
+ Use NumBytesAvailable to access the value for the property.
- Use Options to enable the Options for the process.
+ Use Options to enable the Options for the process.
- HandlePipeInput is a procedure which implements support for asynchronous notifications which occur during execution of the process. HandlePipeInput is assigned using AddPipeEventHandler when Execute is called.
+ HandlePipeInput is a procedure which implements support for asynchronous notifications which occur during execution of the process. HandlePipeInput is assigned using AddPipeEventHandler when Execute is called.
- HandlePipeInput examines values in AReasons to determine the action for the notification. When AReasons includes the value prBroken, the pipe has been closed and UnhookPipeHandle is called. When prDataAvailable is included in AReasons, the OnReadData event handler is signalled (when assigned).
+ HandlePipeInput examines values in AReasons to determine the action for the notification. When AReasons includes the value prBroken, the pipe has been closed and UnhookPipeHandle is called. When prDataAvailable is included in AReasons, the OnReadData event handler is signalled (when assigned).
- Use OnReadData to respond to arrival of data on the handle for the process. Use NumBytesAvailable is determine the number of bytes available.
+ Use OnReadData to respond to arrival of data on the handle for the process. Use NumBytesAvailable is determine the number of bytes available.
- HandleProcessTermination is a procedure which performs actions needed when the process is terminated. HandleProcessTermination is assigned using AddProcessEventHandler when Execute is called.
+ HandleProcessTermination is a procedure which performs actions needed when the process is terminated. HandleProcessTermination is assigned using AddProcessEventHandler when Execute is called.
- HandleProcessTermination calls UnhookProcessHandle and UnhookPipeHandle to release the handlers in the class instance. HandleProcessTermination signals the OnTerminate event handler when it has been assigned.
+ HandleProcessTermination calls UnhookProcessHandle and UnhookPipeHandle to release the handlers in the class instance. HandleProcessTermination signals the OnTerminate event handler when it has been assigned.
- UnhookPipeHandle is a procedure used to remove the pipe handler assigned for the process in the Execute method. UnhookPipeHandle calls RemovePipeEventHandler when it has been assigned. UnhookPipeHandle is called in the Destroy method.
+ UnhookPipeHandle is a procedure used to remove the pipe handler assigned for the process in the Execute method. UnhookPipeHandle calls RemovePipeEventHandler when it has been assigned. UnhookPipeHandle is called in the Destroy method.
- UnhookProcessHandle is a procedure used to remove the process handler assigned for the process in the Execute method. UnhookProcessHandle calls RemoveProcessEventHandler when it has been assigned. UnhookProcessHandle
- is called in the Destroy method.
+ UnhookProcessHandle is a procedure used to remove the process handler assigned for the process in the Execute method. UnhookProcessHandle calls RemoveProcessEventHandler when it has been assigned. UnhookProcessHandle is called in the Destroy method.
- Execute is an overridden procedure used to execute the process. Execute calls the inherited Execute method. Execute uses values in Options to determine if a process or a pipe handler is needed for the class instance. Set the values in Options prior to calling the Execute method.
+ Execute is an overridden procedure used to execute the process. Execute calls the inherited Execute method. Execute uses values in Options to determine if a process or a pipe handler is needed for the class instance. Set the values in Options prior to calling the Execute method.
- When Options includes the value poUsePipes, AddPipeEventHandler is called using HandlePipeInput as the pipe handler.
+ When Options includes the value poUsePipes, AddPipeEventHandler is called using HandlePipeInput as the pipe handler routine.
- Execute calls AddProcessEventHandler using HandleProcessTermination as the process handle.
+ Execute calls AddProcessEventHandler using HandleProcessTermination as the process handler routine.
- NumBytesAvailable is a read-only dword property that indicates the number of bytes available on the Output handle for the process. GetNumBytesAvailable is the read access specifier for the property value. NumBytesAvailable contains the value in Output.NumBytesAvailable, or 0 (zero) when Options does not contain the value poUsePipes.
+ NumBytesAvailable is a read-only name property that indicates the number of bytes available on the Output handle for the process. GetNumBytesAvailable is the read access specifier for the property value. NumBytesAvailable contains the value in Output.NumBytesAvailable, or 0 (zero) when Options does not contain the value poUsePipes.
- Set the values for the Options property prior to calling Execute.
+ Set the values for the Options property prior to calling Execute.
- Use OnReadData to respond to the process notification signalled when data is available.
+ Use OnReadData to respond to the process notification signalled when data is available.
- OnReadData is a TNotifyEvent property that implements the event handler signalled when data is available for the process. Applications should assign a procedure to the event handler that responds to the pipe notification. The procedure must handle all data available on the Output.Handle up to the number of bytes in NumBytesAvailable. All data must be handled, or the procedure will be called repeatedly until no more data is available.
+ OnReadData is a TNotifyEvent property that implements the event handler signalled when data is available for the process. Applications should assign a procedure to the event handler that responds to the pipe notification. The procedure must handle all data available on the Output.Handle up to the number of bytes in NumBytesAvailable. All available data must be handled, or the procedure will be called repeatedly until no more data is available.
- OnTerminate is a TNotifyEvent property that implements the event handler signalled when the process is terminated. Applications can assign a procedure to the event handler to perform actions needed when the process is terminated.
+ OnTerminate is a TNotifyEvent property that implements the event handler signalled when the process is terminated. Applications can assign a procedure to the event handler to perform actions needed when the process is terminated.
TAutoCompleteOption is an enumerated type with values representing the autocomplete options used in TCustomComboBoxEx and TComboBoxEx. Values from the enumeration are stored in the TAutoCompleteOptions set type used to implement the AutoCompleteOptions property in TCustomComboBoxEx and TComboBoxEx. Including a value from the enumeration in the TAutoCompleteOptions set enables the corresponding feature.
@@ -47,10 +45,10 @@
TComboBoxExStyle is an enumerated type with values representing the display styles available in TCustomComboBoxEx. TComboBoxExStyle is the type used to implement the Style property in TCustomComboBoxEx and TComboBoxEx.
@@ -125,27 +119,27 @@
-
TCheckItemChange is an object procedure which specifies an event handler signalled when a checkbox in TCustomCheckCombo is changed. TCheckItemChange is the type used to implement the OnItemChange property in TCustomCheckCombo and TCheckComboBox.
@@ -252,19 +242,19 @@
Similar to TListItemsSortType, but implemented as an object function.
type
+ TFloatPoint = record
+ X, Y : Extended;
+ end;
+
+
+
+
+
+
+
+
- A component notification message is performed for the Collection to signal the delete operation. The Notify method in Collection is not called when Collection is unassigned or does not have an Owner, or when the Owner of the Collection is being freed. + A component notification message is performed for the Collection to signal the delete operation. The Notify method in Collection is not called when Collection is unassigned or does not have an Owner, or when the Owner of the Collection is being freed.
Destroy calls the inherited destructor prior to exiting from the method. @@ -505,9 +495,7 @@
The default value for the property is -1, and indicates that an overlay image index has not been explicitly assigned for the item. The overlay image is not drawn when the property contains -1. @@ -521,11 +509,9 @@
CompareItems is used in the implementation of the Sort method when SortType contains the value stText or stBoth. @@ -635,33 +621,33 @@
+ Sort is a procedure used to perform the sort routine indicated in SortType. +
CaseSensitive is a Boolean property which indicates if case sensitivity is used when comparing items in the collection. The value in CaseSensitive is used in the CompareItems method. When set to False, the captions for the compared Items are converted to lowercase prior to comparing their values. @@ -762,12 +748,10 @@
- SortType is a TListItemsSortType property which determines the comparison mechanism used for collection items in the Sort method.The default value for the property is stNone and indicates that no sorting is performed for Items in the collection. Changing the value for the property causes the Sort method to be called to apply the new order to the collection Items. + SortType is a TListItemsSortType property which determines the comparison mechanism used for collection items in the Sort method. The default value for the property is stNone and indicates that no sorting is performed for Items in the collection. Changing the value for the property causes the Sort method to be called to apply the new order to the collection Items.
OnCompare is a TListCompareEvent property with the event handler signalled to sort the collection using the arbitrary data stored in each collection item. Applications must implement and assign an object procedure using the signature in TListCompareEvent to allow responding to the event notification. @@ -807,7 +789,7 @@ TComboExItems is a TListControlItems descendant which Implements a collection for the items added to TCustomComboBoxEx and TComboBoxEx. TComboExItems extends the ancestor class to use the TComboExItem type for items added to the collection. Reimplemented methods are provided to add, insert, and retrieve collection items using the ItemClass required for the collection. An AddItem method is introduced to create a new collection item and configure its property values. The Notify and Update methods are overridden to use the correct ItemClass as well.
- TComboExItems is the type used to implement the ItemsEx property in TCustomComboBoxEx. + TComboExItems is the type used to implement the ItemsEx property in TCustomComboBoxEx.
TCustomComboBoxEx is a TCustomComboBox descendant which implements the base class for TComboBoxEx.
@@ -1056,22 +1034,22 @@
- Index contains the ordinal position for the TComboExItem instance in ItemsEx that is drawn in the method. + Index contains the ordinal position for the TComboExItem instance in ItemsEx that is drawn in the method.
- ARect is the rectangle with the coordinates for the item drawn in the method. The values in ARect are set in the calling procedure (LMDrawListItem in TCustomComboBox). When the left coordinate is greater than zero (0), the item is a sub-item (not a main item). Sub-items are drawn using the additional spacing in Indent applied to the edge boundary in the drawing rectangle. + ARect is the rectangle with the coordinates for the item. The values in ARect are set in the calling procedure (LMDrawListItem in TCustomComboBox). When the left coordinate is greater than zero (0), the item is a sub-item (or not a main item). Sub-items are drawn with the additional spacing in Indent applied to the drawing rectangle.
State contains the owner draw state used to render the item, and determines the window, border, and font colors for the control. @@ -1104,23 +1082,22 @@ DrawItem uses ThemeServices to get theme details applied to enabled items in the combo-box. DrawItem ensures that a valid text height is available for the control Canvas, and is used to draw the text for the item.
- When Images have been assigned for the control, the image index appropriate to the value in State is determined. The value odSelected causes the SelectedImageIndex for the item is be used. Otherwise, the ImageIndex for the item is used. + When Images have been assigned for the control, the image index appropriate for the value in State is determined. The value odSelected causes the SelectedImageIndex for the item is be used. Otherwise, the ImageIndex for the item is used.
- The image size is determined by calling the SizeForPPI method in Images using the ImagesWidth and the display density for the current Font in the control. DrawItem determines the location for the image and the indent spacing for the current BiDiMode setting for the control. Right-to-Left rendering aligns the image and indent to the right-hand edge of the drawing rectangle. The DrawIcon method in ThemeServices is called to render the icon to the control Canvas using the theme details. + The image size is determined by calling the SizeForPPI method in Images using the ImagesWidth and the display density for the current Font. DrawItem determines the location for the image and the indent spacing for the current BiDiMode setting for the control. Right-to-Left rendering aligns the image and indent to the right-hand edge of the drawing rectangle. The DrawIcon method in ThemeServices is called to render the icon to the control Canvas using the theme details.
- Images are not drawn when Images is unassigned or contains zero (0) images, or when values have not been explicitly assigned to the ImageIndex or SelectedImageIndex properties for the extended item in Index. + Images are not drawn when Images is unassigned or contains zero (0) images, or when values have not been explicitly assigned to either ImageIndex or SelectedImageIndex for the extended item in Index.
- DrawItem configures the Canvas to use the brush style and font color needed for the value in State. Text drawing flags are derived for the item, and the text is rendered by calling the DrawText method in ThemeServices. + DrawItem configures the Canvas to use the brush style and font color needed for the value in State. Text drawing flags are derived for the item, and the text is rendered by calling the DrawText method.
Add is an overloaded method used to add a new item to the extended combo-box control. Both procedure and function variants are provided. @@ -1229,7 +1204,7 @@ The procedure variant does not return the new position for the inserted item. Use the Count property in ItemsEx to determine the ordinal position for the item on exit from the method. Use the parameters to specify the values stored in the corresponding properties in the TComboExItem class instance.
ItemsEx is a TComboExItems property which provides access to the extended items defined for the combo-box control. ItemsEx uses TComboExItem as the ItemClass for the collection. The collection is maintained using the Add, AddItem, Delete, DeleteSelected, and Clear methods. Use AssignItemsEx to set the values in the collection to the values from a specific source. @@ -1427,9 +1400,7 @@
Style is a TComboBoxExStyle property which specifies the control style used for the control. This is a narrower range of values than those used in the TCustomComboBox ancestor class; the owner drawn options are not needed in this class. The following values are used: @@ -1446,13 +1417,11 @@ The default value for the property is set using the cDefStyle constant.
StyleEx is a TComboBoxExStyles property used to store TComboBoxExStyleEx values which enable features in the extended combo-box control. Including a value from the enumeration enables the corresponding feature or behavior in the control. See for more information on the enumeration values and their meanings. @@ -1464,12 +1433,12 @@ Please note: Values in StyleEx are not used in the current implementation of TCustomComboBoxEx.
TCheckComboItemState is a class used to represent state and data for a Checkbox item displayed in TCustomCheckCombo and TCheckComboBox. Properties are provided to store the checkbox state, the enabled setting for the checkbox control, and arbitrary data used for the checkbox.
@@ -1597,7 +1564,7 @@
DrawItem is an overridden procedure used to draw a checkbox defined in the Items for the control.
- Index contains the ordinal position for the TComboExItem instance in ItemsEx that is drawn in the method.
+ Index contains the ordinal position for the TComboExItem instance in ItemsEx that is drawn in the method.
ARect is the rectangle with the coordinates for the checkbox item drawn in the method. The values in ARect are set in the calling procedure (LMDrawListItem in TCustomComboBox).
@@ -1898,13 +1859,13 @@
DrawItem uses ThemeServices to get theme element details applied to checkbox items in the combo-box. DrawItem ensures that a valid text height is available for the control Canvas, and is used to draw the text for the check box.
- DrawItem configures the Canvas to use the brush style and font color needed for the value in State. Text drawing flags are derived for the item, and the text is rendered by calling the DrawText method in ThemeServices.
+ DrawItem configures the Canvas to use the brush style and font color needed for the value in State. Text drawing flags are derived for the item, and the text is rendered by calling the DrawText method.
+ InitItemStates is used to initialize state information for the Items defined in the checkbox control. InitItemStates iterates over the values in Items, and creates a TCheckComboItemState instance with the enabled, checked state, and state data for each of the items.
+
+ The TCheckComboItemState instance is stored in the indexed Objects property. Existing values in Objects are not modified. An Exception is raised if an existing value not derived from TCheckComboItemState is found in Objects.
+
+ InitItemStates is called from the AssignItems, InitializeWnd, and Loaded methods. It is also called when a new values is assigned to the Items property.
+
+ ClearItemStates is used to remove TCheckComboItemState instances for Items in the control.
+
CheckItemStates is a procedure used to ensure that TCheckComboItemState class instances exist for the Items defined in the checkbox combo control. CheckItemStates iterates over the values in Items to determine if its Objects property contains a valid TCheckComboItemState instance. An Exception is raised when the object is not derived from TCheckComboItemState.
@@ -1993,9 +1968,7 @@
QueueCheckItemStates is a procedure used to queue an asynchronous call to the AsyncCheckItemStates method in the global Application singleton. QueueCheckItemStates is called from the DrawItem method.
@@ -2046,17 +2019,13 @@
MouseMove is overridden in TCustomCheckCombo to track the X and Y coordinates for the highlighted checkbox item, and to refresh the control when needed. MouseMove calls the inherited method.
@@ -2079,7 +2048,7 @@
@@ -2181,9 +2150,7 @@
AssignItems calls ClearItemStates to reset the state flags for the existing Items. The Assign method in Items is called to store the values in AItems. The InitItemStates method is called to initialize the Objects properties in Items with TCheckComboItemState instances for each of the check boxes.
@@ -2221,17 +2188,23 @@
+ Ensures that an object instance stored in Objects is freed before removing the item.
+ Calls the Delete method to remove the item at the position in AIndex.
+
CheckAll is a procedure used to set the checked state for all checkboxes defined in the Items for the control. AState contains the state applied to the checkboxes defined in the control.
@@ -2262,9 +2235,12 @@
Checked is an indexed Boolean property which provides access to the checked state for a checkbox item defined in the control. AIndex specifies the ordinal position in Items for the checkbox. Checked uses the value from the TCheckComboItemState object stored in the Items property. True indicates that TCheckComboItemState.Checked contains the value cbChecked. False indicates that it contains the value cbUnchecked.
@@ -2319,10 +2293,8 @@
Objects is an indexed TObject property which provides access to the Data for a checkbox defined in Items. AIndex specifies the ordinal position in Items for the checkbox. Objects return the value from the TCheckComboItemState object stored in the Items property. The object instance is the property value that represents the content stored in the TCheckComboItemState.Data property.
@@ -2353,9 +2323,7 @@
State is an indexed TCheckBoxState property which provides access to the checked State for a checkbox defined in Items. AIndex specifies the ordinal position in Items for the checkbox. State returns the TCheckBoxState value in TCheckComboItemState.State for the associated object instance.
@@ -2377,9 +2345,7 @@
OnItemChange is a TCheckItemChange property with the event handler signalled when a value in the Checked or State properties is changed. Arguments passed to the event handler identify the object for the event notification, and the ordinal position in Items for the modified checkbox.
diff --git a/docs/xml/lcl/comctrls.xml b/docs/xml/lcl/comctrls.xml
index 7a5732d5e1..4f47b3ff61 100644
--- a/docs/xml/lcl/comctrls.xml
+++ b/docs/xml/lcl/comctrls.xml
@@ -18,19 +18,14 @@
+ Register is the procedure used to registers components for use in the Lazarus IDE. Register calls RegisterComponents to add the TDBDateEdit component to the Data Controls tab in the Lazarus IDE. +
++ Developed using information from: +
++ Warnings: +
++ Author: Olivier Guilbaud. + TextRect implemented by T. P. Launchbury (12 Dec 2012). +
+ Defines a special canvas type object and override drawing methods to make the postscript code. +
++ Defines a TPSPattern object that handles creation of patterns to be used in fill and paint operations. +
++ TPostScript manages a list of patterns and inserts the definitions into the postscript code and manages when they are changed. +
++ A pattern definition can access pattern definitions within the same postscript object, as long as the TPSPattern object pointer is placed into the canvas pen/brush at the time the new pattern is made. +
++ Author: Tony Maro +
+