<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Specifies the parent <class namespace="DockTabSet">TDockTabSet</class> that is returned in the
<class namespace="Tabs">TScroller</class> is a horizontal scrolling control that provides basic horizontal scrolling capabilities.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The TTabSet object uses <class namespace="Tabs">TScroller</class> to scroll its visible tabs. <class namespace="Tabs">TScroller</class> is provided for backward compatibility only. <class namespace="Tabs">TScroller</class> is similar to an up-down control (TUpDown) with a horizontal orientation, except that it does not work with a companion control.</para>
<method namespace="Tabs" class="TScroller">Create</method>s an instance of <method namespace="Tabs" class="TScroller">TScroller</method>.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Call <method namespace="Tabs" class="TScroller">TScroller</method> to create an instance of <method namespace="Tabs" class="TScroller">TScroller</method> at runtime. <method namespace="Tabs" class="TScroller">TScroller</method> allocates the memory for the <method namespace="Tabs" class="TScroller">TScroller</method> object and initializes </para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Width to 24 and Height to 13</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Min and Max to 0</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Position to 0</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Change to 1</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The AOwner parameter specifies the component (usually the form) that is responsible for freeing the scroller.</para>
<method namespace="Tabs" class="TScroller">Paint</method>s the image of the <method namespace="Tabs" class="TScroller">TScroller</method> object into its canvas.</para>
<method namespace="Tabs" class="TScroller">Paint</method> is called automatically in response to WM_PAINT messages. <method namespace="Tabs" class="TScroller">Paint</method> paints the arrow buttons, graying them out when Position cannot be moved in the associated direction.</para>
</comments>
</member>
<member name="M:Tabs.Tabs.Destroy">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Frees the memory associated with the <method namespace="Tabs" class="TScroller">TScroller</method> object. </para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call <method namespace="Tabs" class="TScroller">Destroy</method> directly. Instead, use the Free method, which checks whether the <method namespace="Tabs" class="TScroller">TScroller</method> reference is nil before calling <method namespace="Tabs" class="TScroller">Destroy</method>.</para>
</comments>
</member>
<member name="P:Tabs.Tabs.Min">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Specifies the minimum value the Position property can take.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <property namespace="Tabs" class="TScroller">Min</property> to set the lower limit of the scrolling range. The <property namespace="Tabs" class="TScroller">Min</property> and Max properties define the range of values over which the scroller can scroll.</para>
</comments>
</member>
<member name="P:Tabs.Tabs.Max">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Specifies the maximum value the Position property can take.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <property namespace="Tabs" class="TScroller">Max</property> to set the upper limit of the scrolling range. The <property namespace="Tabs" class="TScroller">Max</property> and Min properties define the range of values over which the scroller can scroll.</para>
<property namespace="Tabs" class="TScroller">Position</property> is the current position in the scroll range.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Read <property namespace="Tabs" class="TScroller">Position</property> to determine the current position the scroller represents. <property namespace="Tabs" class="TScroller">Position</property> is a value between Min and Max. Use an OnClick event handler to notify the object being scrolled when the <property namespace="Tabs" class="TScroller">Position</property> changes.</para>
</comments>
</member>
<member name="P:Tabs.Tabs.Change">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Specifies the number of units to scroll when the user clicks the arrow buttons.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Set <property namespace="Tabs" class="TScroller">Change</property> to indicate the number of units between Min and Max the Position moves whenever the user clicks on one of the arrow buttons. <property namespace="Tabs" class="TScroller">Change</property> represents the mapping between the units used to specify Min, Max, and Position, and the logical units represented by the scroller.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">For example, if the values of Min, Max, and Position are given in screen pixels, <property namespace="Tabs" class="TScroller">Change</property> would be the number of pixels to scroll whenever the user clicks the scroll arrow.</para>
<event namespace="Tabs" class="TScroller">OnClick</event> occurs after the Position property has been updated in response to the user clicking one of the arrow buttons.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Write an <event namespace="Tabs" class="TScroller">OnClick</event> event handler to implement the scrolling action of the object that uses the <event namespace="Tabs" class="TScroller">TScroller</event> to control scrolling. When the user clicks one of the arrow buttons, the Position gets updated by Change (unless the Max or Min value is hit), and then an <event namespace="Tabs" class="TScroller">OnClick</event> event occurs.</para>
<para>Each tab has the standard size and look.</para>
</td>
</tr>
</table>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">tsOwnerDrawEach tab has the height specified with the TabHeight property and width needed to hold the text or glyph.</para>
</comments>
</member>
<member name="T:Tabs.TTabSet">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The <class namespace="Tabs">TTabSet</class> component presents horizontal tabs users can click to initiate actions. </para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Tab set controls are commonly used to display tabbed pages within a dialog box. <class namespace="Tabs">TTabSet</class> is provided for backward compatibility. Use TTabControl component in 32-bit Windows applications.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">You create a set of tabs for the tab set control when you specify a list of strings as the value of the Tabs property. One tab is created for each string. </para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">To determine which tab is currently selected or to use code to select a tab, use the TabIndex property. To find out which tab is the first visible tab in the tab set control or to make a tab the first visible tab, use the FirstIndex property.</para>
</comments>
</member>
<member name="M:Tabs.Tabs.ItemAtPos">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Returns the index of the tab indicated by the coordinates of a point on the control. </para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Call <method namespace="Tabs" class="TTabSet">ItemAtPos</method> to identify the tab under the point specified by the Pos parameter. Pos is the point in the control in client coordinates. If the returned index is 0, the tab is the first tab in the tab set, if the index is 1, the tab is the second tab, and so on. <method namespace="Tabs" class="TTabSet">ItemAtPos</method> returns ΓÇô1 if there is no tab at the specified point.</para>
</comments>
</member>
<member name="M:Tabs.Tabs.ItemRect">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Returns the rectangle that surrounds the item specified in the Item parameter.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <method namespace="Tabs" class="TTabSet">ItemRect</method> to obtain the rectangle that surrounds the tab when you are drawing on an owner-draw tab set.</para>
</comments>
</member>
<member name="M:Tabs.Tabs.ItemWidth">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Returns the width, in pixels, of a specified tab in the set.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <method namespace="Tabs" class="TTabSet">ItemWidth</method> to obtain the width, in pixels of a specified tab.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Index is the index of the tab, where 0 indicates the first tab, 1 indicates the second tab, and so on.</para>
</comments>
</member>
<member name="M:Tabs.Tabs.MinClientRect">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Returns the boundaries that are required to display the tabs in the tab set.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <method namespace="Tabs" class="TTabSet">MinClientRect</method> to obtain the minimum size that the tab set's client area must be to display its tabs and (if specified) a scroller for scrolling hidden tabs. <method namespace="Tabs" class="TTabSet">MinClientRect</method> calculates the width based on the widths of all the tabs up to a specified count, adding in the values of StartMargin and EndMargin and the space that appears between tabs. If requested, it also adds the width of a scroller for the tabs. It calculates the height based on the value of the TabHeight property.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">TabCount specifies the number of tabs to display. <method namespace="Tabs" class="TTabSet">MinClientRect</method> uses the widths of these tabs to calculate the width of the client rectangle. If you use a syntax that does not include a TabCount parameter, <method namespace="Tabs" class="TTabSet">MinClientRect</method> assumes that all tabs must be visible.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">IncludeScroller indicates whether the client rectangle must include space for the scroller control that allows users to scroll the tabs, displaying any tabs that are not included in TabCount. If IncludeScroller is false, or if this parameter is omitted, <method namespace="Tabs" class="TTabSet">MinClientRect</method> does not include the width for the scroller in the resulting rectange.</para>
<method namespace="Tabs" class="TTabSet">MinClientRect</method> returns the dimensions, in pixels, needed to display the specified number of tabs and, if specified, the scroller. The returned rectangle has an origin of 0,0.</para>
</comments>
</member>
<member name="M:Tabs.Tabs.Create">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Constructs a tab set control.</para>
<method namespace="Tabs" class="TTabSet">Create</method> sets the initial values of the control, including creating a TTabList object that holds the list of tabs for the control. The AOwner parameter specifies the component (usually a form) that is responsible for freeing the tab set.</para>
</comments>
</member>
<member name="M:Tabs.Tabs.SelectNext">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Selects the next tab in a tab set control, scrolling if necessary to bring the selected tab into view.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The value of the Direction parameters determines if the tab to the left or right is selected. If Direction is true, the tab to the right is selected. If Direction is false, the tab to the left is selected. When the last tab in either direction is selected, calling <method namespace="Tabs" class="TTabSet">SelectNext</method> using the same direction wraps around to the beginning of the tab order. For example, if your application has three tabs, First, Second, and Third, and Third is the current tab, calling <method namespace="Tabs" class="TTabSet">SelectNext</method>(true) selects First. Likewise, if First is the current tab, <method namespace="Tabs" class="TTabSet">SelectNext</method>(false) selects Third.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">When <method namespace="Tabs" class="TTabSet">SelectNext</method> is called, the OnClick event of the tab set occurs, followed by the OnChange event, just as if the user had clicked on a new tab.</para>
</comments>
</member>
<member name="M:Tabs.Tabs.Destroy">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Frees the memory associated with the <method namespace="Tabs" class="TTabSet">TTabSet</method> object. </para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call <method namespace="Tabs" class="TTabSet">Destroy</method> directly. Instead, use the Free method, which checks that the tab set is not nil before calling <method namespace="Tabs" class="TTabSet">Destroy</method>. <method namespace="Tabs" class="TTabSet">Destroy</method> frees the TTabList object that holds the list of tabs.</para>
</comments>
</member>
<member name="P:Tabs.Tabs.FirstIndex">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Specifies the tab that appears in the leftmost visible position in the tab set control.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Any tabs with a lower value in the <property namespace="Tabs" class="TTabSet">FirstIndex</property> property scroll to the left in the tab set control and don't appear until the user scrolls the tabs. </para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The default value of <property namespace="Tabs" class="TTabSet">FirstIndex</property> is 0 indicating that the tab with an index of 0 is in the leftmost position. For example, if you have three tabs labeled First, Second, and Third with TabIndex values of 0, 1, and 2, respectively, First appears first, by default, because it has an index value of 0. If you want to shift the tabs so the Second or Third tab appears leftmost in the tab set control, change the <property namespace="Tabs" class="TTabSet">FirstIndex</property> value to 1 or 2.</para>
</comments>
</member>
<member name="P:Tabs.Tabs.AutoScroll">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Determines if scroll buttons automatically appear in a tab set control if there isn't room in the control to display all the tabs.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">If <property namespace="Tabs" class="TTabSet">AutoScroll</property> is false, the application can still access tabs that aren't visible by using the FirstIndex or TabIndex properties at design time or runtime, but the user can't click on the tabs with the mouse at runtime.</para>
</comments>
</member>
<member name="P:Tabs.Tabs.BackgroundColor">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Determines the background color of the tab set control. </para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <property namespace="Tabs" class="TTabSet">BackgroundColor</property> to indicate the color that the tab set control uses to paint the area between the tabs and the border of the control.</para>
</comments>
</member>
<member name="P:Tabs.Tabs.DitherBackground">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Determines whether the background color set with the BackgroundColor property is dithered.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Dithering means the background is lightened by 50%, which is intended to make the tabs easier to see. If <property namespace="Tabs" class="TTabSet">DitherBackground</property> is true, the tab set control background is dithered. If it is false, there is no dithering.</para>
</comments>
</member>
<member name="P:Tabs.Tabs.EndMargin">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Determines how far, in pixels, the rightmost tab appears from the right edge of the tab set control. </para>
<property namespace="Tabs" class="TTabSet">EndMargin</property> determines how far in pixels the rightmost tab appears from the right edge of the tab set control. Together with the StartMargin property, <property namespace="Tabs" class="TTabSet">EndMargin</property> can play a role in determining how many tabs can fit within the tab set control.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">If AutoScroll is true and scroll buttons appear in the tab set control, <property namespace="Tabs" class="TTabSet">EndMargin</property> determines how far in pixels the rightmost tab appears from the left edge of the scroll buttons, rather than the edge of the tab set control.</para>
</comments>
</member>
<member name="P:Tabs.Tabs.StartMargin">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Determines how far, in pixels, the first tab appears from the left edge of the tab set control. </para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Together with the EndMargin property, <property namespace="Tabs" class="TTabSet">StartMargin</property> determines how many tabs fit in the tab set control.</para>
</comments>
</member>
<member name="P:Tabs.Tabs.SelectedColor">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Determines the color of the selected tab in the tab set control. </para>
<property namespace="Tabs" class="TTabSet">SelectedColor</property> determines the color of the selected tab in the tab set control.</para>
</comments>
</member>
<member name="P:Tabs.Tabs.SoftTop">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Specifies whether a line appears at the edge of the tab set, setting off the non-current tabs. </para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">When <property namespace="Tabs" class="TTabSet">SoftTop</property> is false (the default), a line appears at the edge of the non-current tabs. When <property namespace="Tabs" class="TTabSet">SoftTop</property> is true, this line is not drawn, softening the border of the tab set.</para>
</comments>
</member>
<member name="P:Tabs.Tabs.Style">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Determines whether the tab set is owner-drawn.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Owner-draw tabs can display objects other than strings, such as graphical images. Owner-draw tabs require more programming, however, because the application needs information on how to render the image for each tab in the tab set control.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Each time an item is displayed in an owner-drawn tab, two events occur. The first is the OnMeasureTab event. In the OnMeasureTab event handler, you write the code that calculates the width of the tab needed to hold the text or graphical image. After the OnMeasureTab event, the OnDrawTab event occurs. The code you write for the OnDrawTab event draws the tab and its contents using the width found with the OnMeasureTab event and the height specified as the value of the TabHeight property.</para>
<para>The TTab<property namespace="Tabs" class="TTabSet">Style</property> type defined in the tabs unit for the <property namespace="Tabs" class="TTabSet">Style</property> property differs from the TTab<property namespace="Tabs" class="TTabSet">Style</property> type defined in the comctrls unit. Do not to use or include the comctrls unit in source files where you are working with the tab control. Doing so can lead to compiler errors because of type mismatches.</para>
</note>
</comments>
</member>
<member name="P:Tabs.Tabs.TabHeight">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Determines the height of the tabs in an owner-drawn tab set control. </para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">If the Style property value is tsStandard, the <property namespace="Tabs" class="TTabSet">TabHeight</property> property value is ignored. If the Style property value is tsOwnerDraw, <property namespace="Tabs" class="TTabSet">TabHeight</property> is the height of the tabs.</para>
</comments>
</member>
<member name="P:Tabs.Tabs.Tabs">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Contains the list of text strings that appear on the tabs.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">For each string in the <property namespace="Tabs" class="TTabSet">Tabs</property> property, a new tab is created to display the text string. At design time, you enter the text strings you want to appear on the tabs using the String List editor. Double-click the value column of the <property namespace="Tabs" class="TTabSet">Tabs</property> property to display the String List editor. You can also change strings in the <property namespace="Tabs" class="TTabSet">Tabs</property> property at runtime.</para>
</comments>
</member>
<member name="P:Tabs.Tabs.TabIndex">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Determines which tab of a tab set control is currently selected.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The value of <property namespace="Tabs" class="TTabSet">TabIndex</property> can be from ΓÇô1 to one less than the number of strings in the Tabs property array (Count ΓÇô 1). <property namespace="Tabs" class="TTabSet">TabIndex</property> is an index to the Tabs array property: A value of 0 indicates the first tab in the tab set control, 1 is the second tab, and so on. If no tabs are selected, <property namespace="Tabs" class="TTabSet">TabIndex</property> has a value of ΓÇô1.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">When a value is assigned to <property namespace="Tabs" class="TTabSet">TabIndex</property>, the OnClick event for the tab set occurs, followed by the OnChange event, just as if the user had clicked on a new tab.</para>
</comments>
</member>
<member name="P:Tabs.Tabs.UnselectedColor">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Determines the color of the tabs that aren't currently selected in the tab set control.</para>
<property namespace="Tabs" class="TTabSet">UnselectedColor</property> determines the color of the tabs that aren't currently selected in the tab set control.</para>
</comments>
</member>
<member name="P:Tabs.Tabs.VisibleTabs">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Contains the number of tabs currently visible in the tab set control.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <property namespace="Tabs" class="TTabSet">VisibleTabs</property> to determine how many tabs are visible in the tab set.</para>
</comments>
</member>
<member name="E:Tabs.Tabs.OnChange">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Occurs just before a new tab is selected.</para>
<event namespace="Tabs" class="TTabSet">OnChange</event> occurs just as the TabIndex value is about to change. To prevent the TabIndex value from changing, set AllowChange to false in the <event namespace="Tabs" class="TTabSet">OnChange</event> event handler.</para>
</comments>
</member>
<member name="E:Tabs.Tabs.OnDrawTab">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Occurs when a tab in an owner-drawn tab set control needs to redisplay.</para>
<event namespace="Tabs" class="TTabSet">OnDrawTab</event> occurs when a tab redisplays if the Style property value is tsOwnerDraw. For example, it happens when the user selects a tab or scrolls the tabs.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">You must write the code in the <event namespace="Tabs" class="TTabSet">OnDrawTab</event> event handler to draw the tab.</para>
<event namespace="Tabs" class="TTabSet">OnDrawTab</event> occurs just after the OnMeasureTab event, which contains the code to calculate the width of the tab needed. The height of the tab is determined by the value of the TabHeight property of the tab set control. The code you write in the <event namespace="Tabs" class="TTabSet">OnDrawTab</event> event handler, therefore, must use the width determined with the OnMeasureTab event to draw the tab.</para>
</comments>
</member>
<member name="E:Tabs.Tabs.OnMeasureTab">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Occurs when an application needs to redisplay a tab in an owner-draw tab set.</para>
<event namespace="Tabs" class="TTabSet">OnMeasureTab</event> occurs only if the Style property is tsOwnerDraw. In the OwnerMeasureTab event handler, write the code to calculate the width needed to draw the tab. Your code is responsible for calculating and returning the tab width, depending on what you have drawn in the tab (if the tab is of Style tsOwnerDraw). After the <event namespace="Tabs" class="TTabSet">OnMeasureTab</event> event occurs, the OnDrawTab event occurs, when the OnDrawTab event handler draws the tab using the width calculated in <event namespace="Tabs" class="TTabSet">OnMeasureTab</event>.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Metaclass of the <class namespace="CategoryButtons">TButtonCategories</class> class.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">You add button items tot he category by using the <ide type="dialog">Items Editor</ide>. The <ide type="dialog">Items Editor</ide> can
be invoked from the <property namespace="CategoryButtons">Items</property>
property in the <ide type="frame">Object Inspector</ide>, only when the
<ide type="dialog">Categories Editor</ide> is displayed and a category is
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Specify the button items in this category.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">You define items from within the context of the <ide type="dialog">Categories Editor</ide>. When the <ide type="dialog">Categories
Editor</ide> is displayed, the <ide type="frame">Object Inspector</ide> changes
to reflect what is in the <ide type="dialog">Categories Editor</ide>. In the
<ide type="frame">Object Inspector</ide>, you can click the
<property namespace="CategoryButtons" class="TButtonCategory">Items</property> property to display the
<ide type="dialog">Items Editor</ide>. Use the <ide type="dialog">Items
Editor</ide> to add buttons to the category.</para>
<type namespace="Qt">TButtonLayout</type> defines the location of an image on a button. The following table lists the values for <type namespace="Qt">TButtonLayout</type>:</para>
<class namespace="Buttons">TSpeedButton</class> is a button that is used to execute commands or set modes. </para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <class namespace="Buttons">TSpeedButton</class> to add a button to a group of buttons in a form. <class namespace="Buttons">TSpeedButton</class> introduces properties that can be used to set graphical images that represent the different button states (selected, unselected, disabled and so on). Use other properties to specify multiple images or to rearrange the images and text on the button. <class namespace="Buttons">TSpeedButton</class> also introduces properties that allow speed buttons to work together as a group. Speed buttons are commonly grouped in panels to create specialized tool bars and tool palettes.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The recommended way to implement the response of the button when the user clicks on it is to assign an action from an action list as the value of the Action property. By setting the Action property, you make the button a client of the action, and the action handles updating the button's properties and responding when the user clicks the button.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">If you are not using an action to respond when the user clicks the button, then you can specify the button's response by writing an OnClick event handler.</para>
<para>To create a speed button with a client-aligned glyph that covers the button's edges, add a 1-pixel margin around the button's top and left edges and a 3-pixel margin around its bottom and right edges. Do this by manually editing the bitmap specified by the Glyph property.</para>
<method namespace="Buttons" class="TSpeedButton">Create</method>s and initializes an instance of <method namespace="Buttons" class="TSpeedButton">TSpeedButton</method>. </para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Call <method namespace="Buttons" class="TSpeedButton">Create</method> to create a speed button at runtime. Speed buttons placed on forms at design time are created automatically.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">AOwner is the component, typically a form, that is responsible for freeing the speed button.</para>
</comments>
</member>
<member name="M:Buttons.Buttons.Click">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Generates an On<method namespace="Buttons" class="TSpeedButton">Click</method> event or triggers the associated action.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Call <method namespace="Buttons" class="TSpeedButton">Click</method> to generate an On<method namespace="Buttons" class="TSpeedButton">Click</method> event. If the speed button has an On<method namespace="Buttons" class="TSpeedButton">Click</method> event handler, or if it is linked to an action, <method namespace="Buttons" class="TSpeedButton">Click</method> allows an application to simulate a click on the button.</para>
<method namespace="Buttons" class="TSpeedButton">Destroy</method>s an instance of <method namespace="Buttons" class="TSpeedButton">TSpeedButton</method>.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call <method namespace="Buttons" class="TSpeedButton">Destroy</method> directly in an application. Instead, call Free. Free verifies that the speed button is not nil, and only then calls <method namespace="Buttons" class="TSpeedButton">Destroy</method>.</para>
</comments>
</member>
<member name="P:Buttons.Buttons.AllowAllUp">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Specifies whether all speed buttons in the group that contains this speed button can be unselected at the same time.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <property namespace="Buttons" class="TSpeedButton">AllowAllUp</property> with a group of buttons that belong to the same group. Speed buttons belong to the same group if they have the same value on their GroupIndex property. Buttons in the same group behave in a mutually exclusive fashion: when one button in the group is selected (down), all other buttons in the group become unselected (up). </para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">If <property namespace="Buttons" class="TSpeedButton">AllowAllUp</property> is true, all of the speed buttons in a group can be unselected at the same time. Clicking the single selected button in the group will deselect that button without selecting another. If <property namespace="Buttons" class="TSpeedButton">AllowAllUp</property> is false, exactly one of the buttons in the group must be selected at any time. Clicking a down button won't return the button to its up state.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Changing the value of the <property namespace="Buttons" class="TSpeedButton">AllowAllUp</property> property for one speed button in a group changes the <property namespace="Buttons" class="TSpeedButton">AllowAllUp</property> value for all buttons in the group.</para>
<para>If GroupIndex is zero, <property namespace="Buttons" class="TSpeedButton">AllowAllUp</property> has no effect.</para>
</note>
</comments>
</member>
<member name="P:Buttons.Buttons.GroupIndex">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Allows speed buttons to work together as a group.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Set <property namespace="Buttons" class="TSpeedButton">GroupIndex</property> to determine how the button behaves when clicked. </para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">When <property namespace="Buttons" class="TSpeedButton">GroupIndex</property> is 0, the button behaves independently of all other buttons on the form. When the user clicks such a speed button, the button appears pressed (in its clicked state) and then returns to its normal up state when the user releases the mouse button.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">When <property namespace="Buttons" class="TSpeedButton">GroupIndex</property> is greater than 0, the button remains selected (in its down state) when clicked by the user. When the user clicks a selected button, it returns to the up state, unless Caption is false. Setting the <property namespace="Buttons" class="TSpeedButton">GroupIndex</property> property of a single speed button to a value greater than 0 causes the button to behave as a two-state button when Caption is true.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Speed buttons with the same <property namespace="Buttons" class="TSpeedButton">GroupIndex</property> property value (other than 0), work together as a group. When the user clicks one of these buttons, it remains selected until the user clicks another speed button belonging to the same group. Speed buttons used in this way can present mutually exclusive choices to the user.</para>
</comments>
</member>
<member name="P:Buttons.Buttons.Down">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Specifies whether the button is selected (down) or unselected (up).</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Read <property namespace="Buttons" class="TSpeedButton">Down</property> to determine whether a speed button is selected. The <property namespace="Buttons" class="TSpeedButton">Down</property> property only applies if the GroupIndex property of the button is nonzero.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">When GroupIndex is greater than 0, set <property namespace="Buttons" class="TSpeedButton">Down</property> to true to select a button. When the user clicks on a button in the unselected (up) state, the button is selected and <property namespace="Buttons" class="TSpeedButton">Down</property> is set to true. When the user clicks on a button in the selected (down) state, if Caption is true, the button becomes unselected and <property namespace="Buttons" class="TSpeedButton">Down</property> is set to false.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">At design time, specify which button in a group is the initially selected button by setting the <property namespace="Buttons" class="TSpeedButton">Down</property> property of the selected button to true.</para>
<para>When GroupIndex is 0, buttons do not remain in the selected state when clicked.</para>
</note>
</comments>
</member>
<member name="P:Buttons.Buttons.Caption">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Specifies the caption, or label, that appears on the speed button.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <property namespace="QButtons" class="TSpeedButton">Caption</property> to specify the caption that appears on the speed button. If the speed button is the client of an action, the <property namespace="QButtons" class="TSpeedButton">Caption</property> property can be set by that action.</para>
</comments>
</member>
<member name="P:Buttons.Buttons.Flat">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Determines whether the button has a 3D border that provides a raised or lowered look.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Set <property namespace="Buttons" class="TSpeedButton">Flat</property> to true to remove the raised border when the button is unselected and the lowered border when the button is clicked or selected. When <property namespace="Buttons" class="TSpeedButton">Flat</property> is true, use separate bitmaps for the different button states to provide visual feedback to the user about the button state.</para>
</comments>
</member>
<member name="P:Buttons.Buttons.Glyph">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Specifies the bitmap that appears on the speed button. </para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Set <property namespace="Buttons" class="TSpeedButton">Glyph</property> to a bitmap object that contains the image that should appear on the face of the button. Bring up the Open dialog box from the Object Inspector to choose a bitmap file (with a .BMP extension), or specify a bitmap file at runtime.</para>
<property namespace="Buttons" class="TSpeedButton">Glyph</property> can provide up to four images within a single bitmap. All images must be the same size and next to each other in a horizontal row. <property namespace="Buttons" class="TSpeedButton">TSpeedButton</property> displays one of these images depending on the state of the button.</para>
<para>This image appears when the button is unselected. If no other images exist in the bitmap, this image is used for all states.</para>
</td>
</tr>
<tr>
<td>
<para>Second</para>
</td>
<td>
<para>Disabled</para>
</td>
<td>
<para>This image usually appears dimmed to indicate that the button can't be selected.</para>
</td>
</tr>
<tr>
<td>
<para>Third</para>
</td>
<td>
<para>Clicked</para>
</td>
<td>
<para>This image appears when the button is clicked. If GroupIndex is 0, the Up image reappears when the user releases the mouse button.</para>
</td>
</tr>
<tr>
<td>
<para>Fourth</para>
</td>
<td>
<para>Down</para>
</td>
<td>
<para>This image appears when the button stays down indicating that it remains selected. </para>
</td>
</tr>
</table>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">If only one image is present, <property namespace="Buttons" class="TSpeedButton">TSpeedButton</property> attempts to represent the other states by altering the image slightly for each state, although the Down state is always the same as the Up state. </para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">If the bitmap contains multiple images, specify the number of images in the bitmap with the Num<property namespace="Buttons" class="TSpeedButton">Glyph</property>s property.</para>
<para>The lower left pixel of the bitmap is reserved for the "transparent" color. Any pixel in the bitmap that matches the lower left pixel will be transparent. </para>
</note>
</comments>
</member>
<member name="P:Buttons.Buttons.Layout">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Determines where the image or text appears on the speed button. </para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Set <property namespace="Buttons" class="TSpeedButton">Layout</property> to determine the position of the bitmap specified by the Glyph property or the text specified by the Caption property.</para>
</comments>
</member>
<member name="P:Buttons.Buttons.Margin">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Specifies the number of pixels between the edge of the button and the image or caption drawn on its surface. </para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <property namespace="Buttons" class="TSpeedButton">Margin</property> to specify the indentation of the image specified by the Glyph property or the text specified by the Caption property. The edges that <property namespace="Buttons" class="TSpeedButton">Margin</property> separates depends on the Layout property. If Layout is blGlyphLeft, the margin appears between the left edge of the image or caption and the left edge of the button. If Layout is blGlyphRight, the margin separates the right edges. If Layout is blGlyphTop, the margin separates the top edges, and if Layout is blGlyphBottom, the margin separates the bottom edges.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">If <property namespace="Buttons" class="TSpeedButton">Margin</property> is ΓÇô1, the image or text is centered on the button.</para>
</comments>
</member>
<member name="P:Buttons.Buttons.NumGlyphs">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Specifies the number of images included in the Glyph property.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Set <property namespace="Buttons" class="TSpeedButton">NumGlyphs</property> to the number of images provided by the bitmap assigned to the Glyph property. All images must be the same size and next to each other in a row. The Glyph property can provide up to four images.</para>
</comments>
</member>
<member name="P:Buttons.Buttons.Spacing">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Determines where the image and text appear on a speed button.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Set <property namespace="Buttons" class="TSpeedButton">Spacing</property> to the number of pixels that should appear between the image specified in the Glyph property and the text specified in the Caption property. </para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">If <property namespace="Buttons" class="TSpeedButton">Spacing</property> is a positive number, its value is the number of pixels between the image and text. If <property namespace="Buttons" class="TSpeedButton">Spacing</property> is 0, the image and text appear flush with each other. If <property namespace="Buttons" class="TSpeedButton">Spacing</property> is -1, the text appears centered between the image and the button edge.</para>
</comments>
</member>
<member name="P:Buttons.Buttons.Transparent">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Specifies whether the background of the button is transparent.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <property namespace="Buttons" class="TSpeedButton">Transparent</property> to specify whether the background of the button is transparent.</para>
<type namespace="Qt">TBitBtnKind</type> specifies how a TBitBtn control is rendered and how it behaves when clicked. The following table lists the possible values:</para>
<para>The button uses the Glyph property to determine the image that appears. There is no associated ModalResult value. Instead, you must explicitly select a ModalResult for the button or supply the code to respond using an action or an OnClick event.</para>
</td>
</tr>
<tr>
<td>
<para>bkOK</para>
</td>
<td>
<para>The text "OK" appears on the button face (possibly accompanied by a green check mark). The button becomes the default button (the Default property is automatically set to true). When the user chooses the button, the dialog box closes. The resulting ModalResult value of the button is mrOk.</para>
</td>
</tr>
<tr>
<td>
<para>bkCancel</para>
</td>
<td>
<para>The text "Cancel" appears on the button face (possibly accompanied by a red X). The button becomes the Cancel button (the Cancel property is automatically set to true). When the user chooses the button, the dialog box closes. The resulting ModalResult value of the bitmap button is mrCancel.</para>
</td>
</tr>
<tr>
<td>
<para>bkYes</para>
</td>
<td>
<para>The text "Yes" appears on the button face (possibly accompanied by a green check mark). The button becomes the default button (the Default property is automatically set to true). When the user chooses the button, any changes the user made in the dialog box are accepted and the dialog box closes. The resulting ModalResult value of the bitmap button is mrYes.</para>
</td>
</tr>
<tr>
<td>
<para>bkNo</para>
</td>
<td>
<para>The text "No" appears on the button face (possibly accompanied by a red no symbol). The button becomes the Cancel button (the Cancel property is automatically set to true). When the user chooses the button, any changes the user made in the dialog box are canceled and the dialog box closes. The resulting ModalResult value of the bitmap button is mrNo.</para>
</td>
</tr>
<tr>
<td>
<para>bkHelp</para>
</td>
<td>
<para>The text "Help" appears on the button face (possibly accompanied by a cyan question mark). When the user chooses the button, the help topic associated with the button is automatically displayed.</para>
</td>
</tr>
<tr>
<td>
<para>bkClose</para>
</td>
<td>
<para>The text "Close" appears on the button face (possibly accompanied by a door with a green exit sign over it). When the user chooses the button, the form closes. The Default property of the button is true.</para>
</td>
</tr>
<tr>
<td>
<para>bkAbort</para>
</td>
<td>
<para>The text "Abort" appears on the button face (possibly accompanied by a red X).</para>
</td>
</tr>
<tr>
<td>
<para>bkRetry</para>
</td>
<td>
<para>The text "Retry" appears on the button face (possibly accompanied by a green circular arrow).</para>
</td>
</tr>
<tr>
<td>
<para>bkIgnore</para>
</td>
<td>
<para>The text "Ignore" appears on the button face (possibly accompanied by a green man walking away). Use it to allow the user to continue after an error has occurred.</para>
</td>
</tr>
<tr>
<td>
<para>bkAll</para>
</td>
<td>
<para>The text "Yes to All" appears on the button face (possibly accompanied by a double green check mark).</para>
<class namespace="Buttons">TBitBtn</class> is a push button control that can include a bitmap on its face.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Bitmap buttons exhibit the same behavior as button controls. Use them to initiate actions from forms and dialog boxes.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Bitmap buttons implement properties that specify the bitmap images, along with their appearance and placement on the button. You can choose from predefined bitmap buttons styles or use your own customized bitmap for the button. Although the button can be associated with only one bitmap, the bitmap (glyph property) can be subdivided into four equal-sized portions, which are displayed based on the state of the button: up, down, disabled, and clicked. </para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The Kind property of <class namespace="Buttons">TBitBtn</class> provides commonly used buttons, such as OK, Cancel, Help, and so on. These predefined button types have corresponding graphical images and default behaviors, so you can easily add them to your application with little or no coding necessary.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The recommended way to implement the response of other button kinds to user clicks is to assign an action from an action list as the value of the Action property. By setting the Action property, you make the button a client of the action, and the action handles updating the button's properties and responding when the user clicks the button.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">If you are not using the built-in response to a specific kind of button or an action to respond when the user clicks the button, then you can specify the button's response by writing an OnClick event handler.</para>
</comments>
</member>
<member name="M:Buttons.Buttons.Click">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Simulates a mouse click, as if the user had clicked the button.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <method namespace="Buttons" class="TBitBtn">Click</method> to simulate a mouse click. <method namespace="Buttons" class="TBitBtn">Click</method> performs the following tasks:</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">1. If the value of the Kind property is bkClose, <method namespace="Buttons" class="TBitBtn">Click</method> closes the form. If the value of Kind is bkHelp, <method namespace="Buttons" class="TBitBtn">Click</method> displays the Help screen assigned with the HelpContext property. </para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">2. Any associated action fires, or, if there is no associated action, any code attached to the On<method namespace="Buttons" class="TBitBtn">Click</method> event is executed.</para>
</comments>
</member>
<member name="P:Buttons.Buttons.Glyph">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Specifies the bitmap that appears on the bitmap button.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use the Open dialog box that appears as an editor in the Object Inspector to choose a bitmap file (with a .BMP extension) to use on the button, or specify a TBitmap object at runtime.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">You can provide up to four images within a single bitmap. All images must be the same size and next to each other in a row. Bit buttons display one of these images depending on their state.</para>
<para>This image appears when the button is up (unselected). This image is also used when the button has focus (for example, if the user tabs to it); in this case, a focus rectangle is drawn around the button. If no other images exist in the bitmap, bit buttons also use this image for all other states.</para>
</td>
</tr>
<tr>
<td>
<para>Second</para>
</td>
<td>
<para>Disabled</para>
</td>
<td>
<para>This image usually appears dimmed to indicate that the button can't be selected.</para>
</td>
</tr>
<tr>
<td>
<para>Third</para>
</td>
<td>
<para>Clicked</para>
</td>
<td>
<para>This image appears when the button is clicked. The Up image reappears when the user releases the mouse button.</para>
</td>
</tr>
<tr>
<td>
<para>Fourth</para>
</td>
<td>
<para>Down</para>
</td>
<td>
<para>This image appears when the button stays down (indicating that it remains selected).</para>
</td>
</tr>
</table>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">If only one image is present, bit buttons attempt to represent the other states by altering the image slightly for the different states, although the Down state is always the same as the Up state. If you aren't satisfied with the results, you can provide additional images in the bitmap.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">If you have multiple images in a bitmap, you must specify the number of images that are in the bitmap with the Num<property namespace="Buttons" class="TBitBtn">Glyph</property>s property.</para>
<para>The lower left pixel of the bitmap is reserved for the "transparent" color. Any pixel in the bitmap which matches that lower left pixel will be transparent.</para>
</note>
</comments>
</member>
<member name="P:Buttons.Buttons.Kind">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Specifies the kind of bitmap button.</para>
<property namespace="Buttons" class="TBitBtn">Layout</property> indicates whether the text appears on the left of the button (blGlyphLeft), the right of the button (blGlyphRight), the top (blGlyphTop) or the bottom (blGlyphBottom).</para>
</comments>
</member>
<member name="P:Buttons.Buttons.Margin">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Specifies the number of pixels between the edge of the image (specified in the Glyph property) and the edge of the button. </para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The margin is the space between the image edge and the button edge. The format of the edges depends on the layout of the image and text (specified in the Layout property). For example, if Layout is blGlyphLeft, the margin appears between the left edge of the image and the left edge of the button. If <property namespace="Buttons" class="TBitBtn">Margin</property> is 3, three pixels separate the image and the button edges. If <property namespace="Buttons" class="TBitBtn">Margin</property> is 0, there is no space between the image and the button edges.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">If <property namespace="Buttons" class="TBitBtn">Margin</property> is -1 (the default value), the image and text (specified in the Caption property) are centered. The number of pixels between the image and button edge is equal to the number of pixels between the opposite edge of the button and the text.</para>
</comments>
</member>
<member name="P:Buttons.Buttons.NumGlyphs">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Indicates the number of images that are in the graphic specified in the Glyph property.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">If you have multiple images in a bitmap, you must specify the number of images that are in the bitmap with the <property namespace="Buttons" class="TBitBtn">NumGlyphs</property> property. The default value is 1.</para>
</comments>
</member>
<member name="P:Buttons.Buttons.Spacing">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Determines where the image and text appear on a bitmap or speed button. </para>
<property namespace="Buttons" class="TBitBtn">Spacing</property> determines the number of pixels between the image (specified in the Glyph property) and the text (specified in the Caption property). The default value is 4 pixels.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">If <property namespace="Buttons" class="TBitBtn">Spacing</property> is a positive number, its value is the number of pixels between the image and text. If <property namespace="Buttons" class="TBitBtn">Spacing</property> is 0, no pixels will be between the image and text. If <property namespace="Buttons" class="TBitBtn">Spacing</property> is -1, the text appears centered between the image and the button edge. The number of pixels between the image and text is equal to the number of pixels between the text and the button edge opposite the glyph.</para>
</comments>
</member>
<member name="M:Buttons.DrawButtonFace">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Draws a push button.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <routine namespace="QButtons">DrawButtonFace</routine> to draw a standard push button. <routine namespace="QButtons">DrawButtonFace</routine> draws the borders and background of the button. <routine namespace="QButtons">DrawButtonFace</routine> can be used by button controls that do not descend from TButtonControl, which must implement all their own rendering.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Canvas is the drawing surface on which to render the button.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Client indicates the boundaries of the button's client area on Canvas.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">BevelWidth is the width of the beveled edge on the outside of the button. This parameter is ignored.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">IsDown indicates whether the button is depressed.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">IsFocused indicates whether the button has keyboard focus.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Flat indicates whether the button has a beveled border.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">FillColor is the color to use for the surface of the button.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">FillStyle is the style to use for the brush that paints the surface of the button.</para>
<routine namespace="QButtons">DrawButtonFace</routine> returns the dimensions of the remaining usable area on the surface of the button after the edges and bevels have been drawn.</para>
<class namespace="CmAdmCtl">TCOMAdminCatalog</class> allows an application to act as an Automation controller for the COM+ administration tool.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <class namespace="CmAdmCtl">TCOMAdminCatalog</class> to automate the administration of COM+ applications and services. <class namespace="CmAdmCtl">TCOMAdminCatalog</class> lets you read and write information that is stored on the COM+ catalog, which holds all COM+ configuration data. <class namespace="CmAdmCtl">TCOMAdminCatalog</class> implements the ICOMAdminCatalog interface, to let you</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Access collections on the catalog.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Install COM+ applications and components. </para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Start and stop services.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Connect to and administer remote servers.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use the Connect method to access the COMAdminCatalog server. You can then use the methods of <class namespace="CmAdmCtl">TCOMAdminCatalog</class> to send commands that administer COM+ applications on this or another machine.</para>
</comments>
</member>
<member name="M:CmAdmCtl.CmAdmCtl.GetCollection">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Returns a <method namespace="CmAdmCtl" class="TCOMAdminCatalog">TCOMAdminCatalog</method>Collection object for a specified collection.</para>
<method namespace="CmAdmCtl" class="TCOMAdminCatalog">GetCollection</method> retrieves a top-level collection from the COM+ catalog, such as Applications. Subcollections (collections that are not top-level collections, such as Components) must be fetched using the <method namespace="CmAdmCtl" class="TCOMAdminCatalog">GetCollection</method> method of their parent collection or using the <method namespace="CmAdmCtl" class="TCOMAdminCatalog">GetCollection</method>ByQuery method. </para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">bstrCollName is the name of the desired collection. The available collections depend on your version of the COMAdmin Library. See the Microsoft documentation for a list of the available collections in your version of the COMAdmin Library.</para>
<para>The <method namespace="CmAdmCtl" class="TCOMAdminCatalog">TCOMAdminCatalog</method>Collection object that <method namespace="CmAdmCtl" class="TCOMAdminCatalog">GetCollection</method> returns does not contain data from the catalog for items contained in the collection. Use the Populate method to read in data for items in the collection. </para>
<method namespace="CmAdmCtl" class="TCOMAdminCatalog">Connect</method>s to a remote computer so that you can administer the collections on that machine.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Call ICOMAdminCatalog_<method namespace="CmAdmCtl" class="TCOMAdminCatalog">Connect</method> to administer the COM+ components and services on a remote machine.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">bstr<method namespace="CmAdmCtl" class="TCOMAdminCatalog">Connect</method>String is the name of the remote computer whose COM+ components and services you want to administer.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">ICOMAdminCatalog_<method namespace="CmAdmCtl" class="TCOMAdminCatalog">Connect</method> returns the root collection on the remote computer. The root collection contains the top-level collections on the catalog of the remote machine. It does not contain any <method namespace="CmAdmCtl" class="TCOMAdminCatalog">TCOMAdminCatalog</method>Object objects or support any properties. You can't use the Add or Remove methods of this <method namespace="CmAdmCtl" class="TCOMAdminCatalog">TCOMAdminCatalog</method>Collection object.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Retrieves a collection from the COM+ catalog given all of its parent items.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Call <method namespace="CmAdmCtl" class="TCOMAdminCatalog">GetCollectionByQuery</method> to obtain a collection on the catalog given the Key property of each of its parent items. The Key property for each parent item is a GUID that uniquely identifies it on the COM+ catalog.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">bstrCollName is the name of the desired collection. The available collections depend on your version of the COMAdmin Library. See the Microsoft documentation for a list of the available collections in your version of the COMAdmin Library.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">aQuery is a safe array of containing the Key property for each parent item of the desired collection.</para>
<para>If bstrCollName is 'ErrorInfo', 'RelatedCollectionInfo', or 'PropertyInfo', <method namespace="CmAdmCtl" class="TCOMAdminCatalog">GetCollectionByQuery</method> ignores the aQuery parameter and returns the named collection immediately relative to the Root collection. To obtain these collections relative to an arbitrary collection in the catalog, use the GetCollection method of the parent collection.</para>
<para>The <method namespace="CmAdmCtl" class="TCOMAdminCatalog">TCOMAdminCatalog</method>Collection object that <method namespace="CmAdmCtl" class="TCOMAdminCatalog">GetCollectionByQuery</method> returns does not contain data from the catalog for items contained in the collection. Use the Populate method to read in data for items in the collection. </para>
</note>
</comments>
</member>
<member name="M:CmAdmCtl.CmAdmCtl.ServiceCheck">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Checks the status of a COM+ service. </para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Call <method namespace="CmAdmCtl" class="TCOMAdminCatalog">ServiceCheck</method> to check the status of the service specified by lService. A value of 1 specifies the Component Load Balancing service. At present, <method namespace="CmAdmCtl" class="TCOMAdminCatalog">TCOMAdminCatalog</method> does not support any other services.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">SericeCheck returns one of the following values:</para>
<method namespace="CmAdmCtl" class="TCOMAdminCatalog">Create</method>s a new instance of <method namespace="CmAdmCtl" class="TCOMAdminCatalog">TCOMAdminCatalog</method>.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Call <method namespace="CmAdmCtl" class="TCOMAdminCatalog">Create</method> to instantiate <method namespace="CmAdmCtl" class="TCOMAdminCatalog">TCOMAdminCatalog</method> at runtime. <method namespace="CmAdmCtl" class="TCOMAdminCatalog">TCOMAdminCatalog</method> objects added at design time are instantiated automatically.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Owner specifies the component (typically a form or data module) that is responsible for freeing the <method namespace="CmAdmCtl" class="TCOMAdminCatalog">TCOMAdminCatalog</method> instance.</para>
</comments>
</member>
<member name="M:CmAdmCtl.CmAdmCtl.Connect">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Establishes a connection to the COM server that implements the COM+ administration catalog.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Call <method namespace="CmAdmCtl" class="TCOMAdminCatalog">Connect</method> to connect the <method namespace="CmAdmCtl" class="TCOMAdminCatalog">TCOMAdminCatalog</method> component to the COM server it uses to administer the COM+ catalog data store. If the Auto<method namespace="CmAdmCtl" class="TCOMAdminCatalog">Connect</method> property is true, the <method namespace="CmAdmCtl" class="TCOMAdminCatalog">TCOMAdminCatalog</method> component automatically calls <method namespace="CmAdmCtl" class="TCOMAdminCatalog">Connect</method> when the application is first run.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not use <method namespace="CmAdmCtl" class="TCOMAdminCatalog">Connect</method> if the value of <method namespace="CmAdmCtl" class="TCOMAdminCatalog">Connect</method>Kind is ckAttachToInterface. When attaching to an interface, use the <method namespace="CmAdmCtl" class="TCOMAdminCatalog">Connect</method>To method instead.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">If the value of <method namespace="CmAdmCtl" class="TCOMAdminCatalog">Connect</method>Kind is ckRemote, the RemoteMachineName property must be set before calling <method namespace="CmAdmCtl" class="TCOMAdminCatalog">Connect</method>.</para>
<para>Do not confuse <method namespace="CmAdmCtl" class="TCOMAdminCatalog">Connect</method> with the ICOMAdminCatalog_<method namespace="CmAdmCtl" class="TCOMAdminCatalog">Connect</method> method. <method namespace="CmAdmCtl" class="TCOMAdminCatalog">Connect</method> establishes a connection to the server that <method namespace="CmAdmCtl" class="TCOMAdminCatalog">TCOMAdminCatalog</method> represents, while ICOMAdminCatalog_<method namespace="CmAdmCtl" class="TCOMAdminCatalog">Connect</method> connects to a remote machine on which you want to administer COM+ applications and services.</para>
</note>
</comments>
</member>
<member name="M:CmAdmCtl.CmAdmCtl.ConnectTo">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Connects the <method namespace="CmAdmCtl" class="TCOMAdminCatalog">TCOMAdminCatalog</method> component to an existing ICOMAdminCatalog interface.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <method namespace="CmAdmCtl" class="TCOMAdminCatalog">ConnectTo</method> when the ConnectKind property is ckAttachToInterface. <method namespace="CmAdmCtl" class="TCOMAdminCatalog">ConnectTo</method> allows the <method namespace="CmAdmCtl" class="TCOMAdminCatalog">TCOMAdminCatalog</method> to use an existing ICOMAdminCatalog interface rather than establishing a new connection to the server and obtaining a new interface.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">If the ConnectKind property is not ckAttachToInterface, use the Connect method instead.</para>
</comments>
</member>
<member name="M:CmAdmCtl.CmAdmCtl.Disconnect">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Terminates the connection to the COM server.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Call <method namespace="CmAdmCtl" class="TCOMAdminCatalog">Disconnect</method> to release a connection formed using the Connect or ConnectTo method.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Imports a registered in-process component to a COM+ application. </para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not use <method namespace="CmAdmCtl" class="TCOMAdminCatalog">ImportComponent</method>. Use the InstallComponent method instead. InstallComponent fully registers the component in the COM+ class registration database (RegDB), whereas <method namespace="CmAdmCtl" class="TCOMAdminCatalog">ImportComponent</method> does not bring any interface, method, or type library information for the component into the COM+ class registration database. This restricts how the component can be configured. When you export a COM+ application that has an imported component to an application proxy, the proxy will contain no interface or type library information for the component, and marshalling for that component will fail.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">bstrApplIdOrName is the name or GUID that represents the application into which to import the component.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">bstrCLSIDOrProgID is the CLSID or ProgID that identifies the component to import.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Installs a component into a COM+ application, and provides default configuration in the COM+ class registration database (RegDB).</para>
<method namespace="CmAdmCtl" class="TCOMAdminCatalog">InstallComponent</method> installs all components (COM classes) in a .dll file into a COM+ application, and registers the components in the COM+ class registration database (RegDB) as configured components, providing a default configuration.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">bstrApplIdOrName is the name or GUID that represents the application into which to install the components.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">bstrDLL is the name of the .dll file that implements the component or components.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">bstrTLB is the name of the external type library file for the .dll. If the type library is embedded in the .dll, the parameter should be an empty string.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">bstrPSDLL is the name of the proxy-stub .dll file. If there is no proxy-stub .dll associated with the component, set this parameter to an empty string. </para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Initiates shutdown of a COM+ application server process.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Call <method namespace="CmAdmCtl" class="TCOMAdminCatalog">ShutdownApplication</method> to shut down a COM+ application process.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">bstrApplIdOrName is the GUID or name that identifies the application to shut down.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Exports a COM+ application or application proxy to a file for installation on other machines.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <method namespace="CmAdmCtl" class="TCOMAdminCatalog">ExportApplication</method> to create a file that the InstallApplication method can use to install a COM+ application or application proxy on other machines.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">bstrApplIdOrName is the name or GUID that identifies the application to be exported.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">bstrApplicationFile is the name of the file to which <method namespace="CmAdmCtl" class="TCOMAdminCatalog">ExportApplication</method> exports bstrApplIDOrName. This file name should include the file path. If you do not provide a file name, <method namespace="CmAdmCtl" class="TCOMAdminCatalog">ExportApplication</method> creates a file with the same name as the application in the default directory.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">lOptions indicate how the application should be exported. The value of lOptions is a sum that represents a set of the following flags.</para>
<para>Export application as an application proxy.</para>
</td>
</tr>
<tr>
<td>
<para>4</para>
</td>
<td>
<para>Overwrite files.</para>
</td>
</tr>
</table>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">If no option flags are provided, <method namespace="CmAdmCtl" class="TCOMAdminCatalog">ExportApplication</method> exports the specified COM+ application to an MSI file, without the users assigned to application roles. </para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Installs a COM+ application or application proxy from a file.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <method namespace="CmAdmCtl" class="TCOMAdminCatalog">InstallApplication</method> to install an application or application proxy that was previously saved by a call to the ExportApplication method.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">bstrApplicationFile is the name of the file created by ExportApplication.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">bstrDestinationDirectory is the directory where the components in the application should be installed. If this parameter is nil (Delphi) or NULL (C++), <method namespace="CmAdmCtl" class="TCOMAdminCatalog">InstallApplication</method> uses the default directory.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">lOptions is a set of flags that modify how the application is installed. It is a sum of 0 or more of the following flags:</para>
<para>Don't install any users saved in the application file.</para>
</td>
</tr>
<tr>
<td>
<para>1</para>
</td>
<td>
<para>Install all users that are saved in the application file.</para>
</td>
</tr>
<tr>
<td>
<para>2</para>
</td>
<td>
<para>Overwrite any files that already exist in the target directory.</para>
</td>
</tr>
</table>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">bstrUserId specifies the user ID under which to run the application. This value can be nil (Delphi) or NULL (C++).</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">bstrPassword specifies the password under which to run the application. This value can be nil (Delphi) or NULL (C++).</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">bstrRSN specifies the remote server name when bstrApplicationFile is an application proxy. </para>
</comments>
</member>
<member name="M:CmAdmCtl.CmAdmCtl.StopRouter">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Stops the component load balancing service on a CLB server.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">When called on a machine acting as the component load balancing (CLB) server, <method namespace="CmAdmCtl" class="TCOMAdminCatalog">StopRouter</method> stops the server from routing component activation requests to other servers in the application cluster. </para>
</comments>
</member>
<member name="M:CmAdmCtl.CmAdmCtl.RefreshRouter">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Refreshes the data being used by the component load balancing service on a CLB server. </para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not use the <method namespace="CmAdmCtl" class="TCOMAdminCatalog">RefreshRouter</method> method. It is deprecated.</para>
</comments>
</member>
<member name="M:CmAdmCtl.CmAdmCtl.StartRouter">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Starts the component load balancing service on a CLB server.</para>
<method namespace="CmAdmCtl" class="TCOMAdminCatalog">StartRouter</method> starts the component load balancing service if it is installed. Subsequent component activation requests are then routed across the application cluster that the router defines.</para>
<method namespace="CmAdmCtl" class="TCOMAdminCatalog">StartRouter</method> does nothing if called on a machine that does not act as the component load balancing (CLB) server.</para>
<method namespace="CmAdmCtl" class="TCOMAdminCatalog">InstallMultipleComponents</method> installs the components in the specified files into the specified COM+ application.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">bstrApplIdOrName is the name or GUID that represents the application into which to install the components.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">varFileNames is an array of strings, where each string is the name of a .dll file that implements the components to install.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">varCLSIDS is an array of Variants holding CLSIDs for the components to install. </para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Returns information about COM+ components found in specified .dll files.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Call <method namespace="CmAdmCtl" class="TCOMAdminCatalog">GetMultipleComponentsInfo</method> to obtain information on the objects that a specified set of .dll files make available.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">bstrApplIdOrName specifes the name or GUID of the application to which the .dll files belong.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">varFileNames is an array of WideString values, each of which is the name of a .dll.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">varCLSIDS returns an array of CLSIDs for the COM+ components in the specified .dll files.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">varClassNames returns an array of class names for the component classes in the specified .dll files.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">varFileFlags returns an array of file flags that return information about the specified files. Each entry in the array is built from the following flags:</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">varComponentFlags returns an array of file flags that return information about the components in the specified files. Each entry in the array is built from the following flags:</para>
<method namespace="CmAdmCtl" class="TCOMAdminCatalog">RefreshComponents</method> compares CLSIDs and ProgIDs between the COM+ class registration database (RegDB) and the Registry for mismatches. When it detects a mismatch in CLSIDs and ProgIDs, <method namespace="CmAdmCtl" class="TCOMAdminCatalog">RefreshComponents</method> updates the COM+ class registration database (RegDB).</para>
<method namespace="CmAdmCtl" class="TCOMAdminCatalog">RefreshComponents</method> only updates CLSID information. It does not update interface or method information. Components that are refreshed using <method namespace="CmAdmCtl" class="TCOMAdminCatalog">RefreshComponents</method> can not be configured or secured at the interface or method levels in COM+ applications.</para>
<para>You generally should not use <method namespace="CmAdmCtl" class="TCOMAdminCatalog">RefreshComponents</method>. The recommended way to update components in COM+ applications is to remove and reinstall the components using InstallComponent, so that complete registration information is updated in RegDB. </para>
</note>
</comments>
</member>
<member name="M:CmAdmCtl.CmAdmCtl.BackupREGDB">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Backs up the COM+ class registration database to a specified file.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Call <method namespace="CmAdmCtl" class="TCOMAdminCatalog">BackupREGDB</method> to back up the COM+ class registration database (RegDB). The database can be restored at a later date using the RestoreREGDB method.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">bstrBackupFilePath specifies the fully-qualified name of the file to which RegDB will be backed up.</para>
</comments>
</member>
<member name="M:CmAdmCtl.CmAdmCtl.RestoreREGDB">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Restores the COM+ class registration database (RegDB) from a specified file.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Call <method namespace="CmAdmCtl" class="TCOMAdminCatalog">RestoreREGDB</method> to restore the COM+ class registration database (RegDB) from a file that was previously created by the BackupREGDB method This requires a system reboot in order to take effect.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">bstrBackupFilePath is the file previously created by the BackupREGDB method. </para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Retrieves information about a COM+ application from a COM+ application file.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Call <method namespace="CmAdmCtl" class="TCOMAdminCatalog">QueryApplicationFile</method> to obtain information about a COM+ application from its application file. An application file is created by the ExportApplication method.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">bstrApplicationFile is the name of the ApplicationFile from which to retrieve information.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">bstrApplicationName returns the name of the application.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">bstrApplicationDescription returns a brief description of the application.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">bHasUsers returns true if the application file includes user information associated with its roles, false otherwise.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">bIsProxy returns true if the application file contains an application proxy, false otherwise.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">varFileNames returns an array of all .dll files containing components that are installed in the application.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Launches a COM+ server application in a dedicated process.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Call <method namespace="CmAdmCtl" class="TCOMAdminCatalog">StartApplication</method> to start up a COM+ server application. The components in the application are launched in a new dedicated process.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">bstrApplIdOrName is the GUID or name that identifies the application to start.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Installs event classes from multiple files into a COM+ application.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <method namespace="CmAdmCtl" class="TCOMAdminCatalog">InstallMultipleEventClasses</method> to install event classes from multiple self-registering .dll files, each of which holds the dummy implementation of one or more COM+ event classes. There must be a type library to describe the interfaces that the event classes implement, and each event class must have a CLSID and a ProgID. </para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The dummy implementation of the event class is never actually run. It exists only to register the event class. When the publisher creates the event class, the Events system provides an implementation to send the event to subscribers.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">bstrApplIdOrName is the name or GUID that represents the application into which to install the event classes.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">varFileNames is an array of strings, where each string is the name of a self-registering .dll file that contains the event classes to install.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">varCLSIDS is an array of Variants holding CLSIDs for the event classes to install. </para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Installs a COM+ event class into an application.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <method namespace="CmAdmCtl" class="TCOMAdminCatalog">InstallEventClass</method> to install event classes from a .dll that holds dummy implementations of the event classes. The .dll must be self-registering, there must be a type library to describe the interfaces that the event classes implement, and each event class must have a CLSID and a ProgID. </para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The dummy implementation of the event class is never actually run. It exists only to register the event class. When the publisher creates the event class, the Events system provides an implementation to send the event to subscribers.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">bstrApplIdOrName is the name or GUID that represents the application into which to install the event classes.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">bstrDLL is the name of the self-registering .dll file that contains the event classes.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">bstrTLB is the name of the external type library file for the .dll. If the type library is embedded in the .dll, set this parameter to an empty string.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">bstrPSDLL is the name of the proxy-stub .dll file. If there is no proxy-stub .dll associated with the event class, set this parameter to an empty string. </para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Retrieves a list of event classes that implement a specified interface.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Call <method namespace="CmAdmCtl" class="TCOMAdminCatalog">GetEventClassesForIID</method> to determine the available COM+ event objects that implement a specified interface.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">bstrIID is the GUID for the interface that you want the event classes to implement. If bstrIID is nil (Delphi) or NULL (C++), <method namespace="CmAdmCtl" class="TCOMAdminCatalog">GetEventClassesForIID</method> returns all event classes registered on the machine.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">varCLSIDS returns an array of CLSIDs for the event classes that implement bstrIID.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">varProgIDS returns an array of ProgIDs for the event classes that implement bstrIID.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">varDescriptions returns an array of description strings for the event classes that implement bstrIID.</para>
</comments>
</member>
<member name="M:CmAdmCtl.CmAdmCtl.Destroy">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Frees an instance of <method namespace="CmAdmCtl" class="TCOMAdminCatalog">TCOMAdminCatalog</method>
</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call <method namespace="CmAdmCtl" class="TCOMAdminCatalog">Destroy</method> directly in an application. Instead, call Free. Free checks that the <method namespace="CmAdmCtl" class="TCOMAdminCatalog">TCOMAdminCatalog</method> component reference is not nil before calling <method namespace="CmAdmCtl" class="TCOMAdminCatalog">Destroy</method>. <method namespace="CmAdmCtl" class="TCOMAdminCatalog">Destroy</method> disconnects from the server, if necessary, before freeing the component.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Provides access to the default interface for the component.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <property namespace="CmAdmCtl" class="TCOMAdminCatalog">DefaultInterface</property> to access the default interface for <property namespace="CmAdmCtl" class="TCOMAdminCatalog">TCOMAdminCatalog</property>. This is the ICOMAdminCatalog interface, whose properties and methods are surfaced as properties and methods of <property namespace="CmAdmCtl" class="TCOMAdminCatalog">TCOMAdminCatalog</property>.</para>
</comments>
</member>
<member name="P:CmAdmCtl.CmAdmCtl.MajorVersion">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Indicates the major version number of the COMAdmin Library</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <property namespace="CmAdmCtl" class="TCOMAdminCatalog">MajorVersion</property> to determine the major version number of the COMAdmin Library, which <property namespace="CmAdmCtl" class="TCOMAdminCatalog">TCOMAdminCatalog</property> uses to administer COM+ applications.</para>
</comments>
</member>
<member name="P:CmAdmCtl.CmAdmCtl.MinorVersion">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Indicates the minor version number of the COMAdmin Library</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <property namespace="CmAdmCtl" class="TCOMAdminCatalog">MinorVersion</property> to determine the minor version number of the COMAdmin Library, which <property namespace="CmAdmCtl" class="TCOMAdminCatalog">TCOMAdminCatalog</property> uses to administer COM+ applications.</para>
<class namespace="CmAdmCtl">TCOMAdminCatalogObject</class> represents an item in a collection from the COM+ catalog.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <class namespace="CmAdmCtl">TCOMAdminCatalogObject</class> to work with one of the items in a COM+ catalog collection. Use the Get_Item method of TCOMAdminCatlogCollection to obtain a <class namespace="CmAdmCtl">TCOMAdminCatalogObject</class> instance for a specific item. Each item corresponds to one of the items in a folder that appears in the Component Services administration tool.</para>
<class namespace="CmAdmCtl">TCOMAdminCatalogObject</class> implements the ICatalogObject interface, to let you get and set properties on the items in a catalog collection. Any changes you make to the item are not reflected on the catalog data store until you call SaveChanges for the collection that contains the item.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Indicates whether a specified property is read-only.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Call <method namespace="CmAdmCtl" class="TCOMAdminCatalogObject">IsPropertyReadOnly</method> to determine whether you can use the Value property to set a specific property. If <method namespace="CmAdmCtl" class="TCOMAdminCatalogObject">IsPropertyReadOnly</method> returns true, you can use Value to read the property's value but not set it. If <method namespace="CmAdmCtl" class="TCOMAdminCatalogObject">IsPropertyReadOnly</method> returns false, you can use Value to set the property's value as well.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">bstrPropName is the name of the property.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Indicates whether a specified property is write-only.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Call <method namespace="CmAdmCtl" class="TCOMAdminCatalogObject">IsPropertyWriteOnly</method> to determine whether you can read the value of a specific property using the Value property. If <method namespace="CmAdmCtl" class="TCOMAdminCatalogObject">IsPropertyWriteOnly</method> returns true, you can use Value to set the property's value but not read it. If <method namespace="CmAdmCtl" class="TCOMAdminCatalogObject">IsPropertyWriteOnly</method> returns false, you can use Value to read the property's value as well.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">bstrPropName is the name of the property.</para>
<method namespace="CmAdmCtl" class="TCOMAdminCatalogObject">Create</method>s a new instance of <method namespace="CmAdmCtl" class="TCOMAdminCatalogObject">TCOMAdminCatalogObject</method>.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Call <method namespace="CmAdmCtl" class="TCOMAdminCatalogObject">Create</method> to instantiate <method namespace="CmAdmCtl" class="TCOMAdminCatalogObject">TCOMAdminCatalogObject</method> at runtime. Once you create a <method namespace="CmAdmCtl" class="TCOMAdminCatalogObject">TCOMAdminCatalogObject</method>, you must bind it to an ICatalogObject interface before you can use it. Use the ConnectTo method to bind a <method namespace="CmAdmCtl" class="TCOMAdminCatalogObject">TCOMAdminCatalogObject</method> instance to an ICatalogObject interface.</para>
<para>The <method namespace="CmAdmCtl" class="TCOMAdminCatalogObject">TCOMAdminCatalogObject</method> instance that the catalog object returns from its Get_Item method is already bound to an ICatalogObject interface.</para>
</note>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Owner specifies the component (typically a form or data module) that is responsible for freeing the <method namespace="CmAdmCtl" class="TCOMAdminCatalogObject">TCOMAdminCatalogObject</method> instance.</para>
</comments>
</member>
<member name="M:CmAdmCtl.CmAdmCtl.Connect">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Not used in <method namespace="CmAdmCtl" class="TCOMAdminCatalogObject">TCOMAdminCatalogObject</method>.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not use the <method namespace="CmAdmCtl" class="TCOMAdminCatalogObject">Connect</method> method. <method namespace="CmAdmCtl" class="TCOMAdminCatalogObject">TCOMAdminCatalogObject</method> objects never directly launch the COM server. Rather, obtain a <method namespace="CmAdmCtl" class="TCOMAdminCatalogObject">TCOMAdminCatalogObject</method> object that is already bound to an ICatalogCollection interface from the parent collection's Get_Item method.</para>
</comments>
</member>
<member name="M:CmAdmCtl.CmAdmCtl.ConnectTo">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Connects the <method namespace="CmAdmCtl" class="TCOMAdminCatalogObject">TCOMAdminCatalogObject</method> component to an existing ICatalogObject interface.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <method namespace="CmAdmCtl" class="TCOMAdminCatalogObject">ConnectTo</method> when the ConnectKind property is ckAttachToInterface. <method namespace="CmAdmCtl" class="TCOMAdminCatalogObject">ConnectTo</method> allows the <method namespace="CmAdmCtl" class="TCOMAdminCatalogObject">TCOMAdminCatalogObject</method> to use an existing ICatalogCollection interface.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Typically, applications do not need to use the <method namespace="CmAdmCtl" class="TCOMAdminCatalogObject">ConnectTo</method> method. Rather, they obtain a <method namespace="CmAdmCtl" class="TCOMAdminCatalogObject">TCOMAdminCatalogObject</method> object that is already bound to an ICatalogCollection object by calling the collection object's Get_Item method.</para>
</comments>
</member>
<member name="M:CmAdmCtl.CmAdmCtl.Disconnect">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Terminates the connection to the COM server.</para>
<method namespace="CmAdmCtl" class="TCOMAdminCatalogObject">Disconnect</method> releases the ICatalogObject interface that <method namespace="CmAdmCtl" class="TCOMAdminCatalogObject">TCOMAdminCatalogObject</method> uses to implement its properties and methods. Once you have called <method namespace="CmAdmCtl" class="TCOMAdminCatalogObject">Disconnect</method>, you can no longer use the <method namespace="CmAdmCtl" class="TCOMAdminCatalogObject">TCOMAdminCatalogObject</method> instance, unless you rebind it to another interface using the ConnectTo method.</para>
</comments>
</member>
<member name="M:CmAdmCtl.CmAdmCtl.Destroy">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Frees an instance of <method namespace="CmAdmCtl" class="TCOMAdminCatalogObject">TCOMAdminCatalogObject</method>
</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call <method namespace="CmAdmCtl" class="TCOMAdminCatalogObject">Destroy</method> directly in an application. Instead, call Free. Free checks that the <method namespace="CmAdmCtl" class="TCOMAdminCatalogObject">TCOMAdminCatalogObject</method> component reference is not nil before calling <method namespace="CmAdmCtl" class="TCOMAdminCatalogObject">Destroy</method>.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Note that freeing a <method namespace="CmAdmCtl" class="TCOMAdminCatalogObject">TCOMAdminCatalogObject</method> instance does not delete the item from its collection. It merely frees the object that lets you work with the item.</para>
</comments>
</member>
<member name="P:CmAdmCtl.CmAdmCtl.Value">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Represents a the value of a named property of the catalog object.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <property namespace="CmAdmCtl" class="TCOMAdminCatalogObject">Value</property> to get or set a named property of this item.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">bstrPropName is the name of the property to get or set. Valid property names depend on the type of the item (the collection to which the item belongs). To determine the available properties for this object, check the Microsoft documentation for the specific collection to which this item belongs.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Provides access to the default interface for the component.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <property namespace="CmAdmCtl" class="TCOMAdminCatalogObject">DefaultInterface</property> to access the default interface for <property namespace="CmAdmCtl" class="TCOMAdminCatalogObject">TCOMAdminCatalogObject</property>. This is the ICatalogObject interface, whose properties and methods are surfaced as properties and methods of <property namespace="CmAdmCtl" class="TCOMAdminCatalogObject">TCOMAdminCatalogObject</property>.</para>
</comments>
</member>
<member name="P:CmAdmCtl.CmAdmCtl.Key">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Uniquely identifies the catalog item.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The <property namespace="CmAdmCtl" class="TCOMAdminCatalogObject">Key</property> property serves as the primary identifier for an object. In some cases, <property namespace="CmAdmCtl" class="TCOMAdminCatalogObject">Key</property> is a GUID, such as CLSID for a component; in some cases it is the item name, as with roles. To determine the meaning of the <property namespace="CmAdmCtl" class="TCOMAdminCatalogObject">Key</property> property, check the Microsoft documentation for the specific collection to which this item belongs.</para>
<para>If you add a new object to a collection and save it with the <property namespace="CmAdmCtl" class="TCOMAdminCatalogObject">Key</property> property of an existing object, you overwrite the existing object. </para>
</note>
</comments>
</member>
<member name="P:CmAdmCtl.CmAdmCtl.Name">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Indicates the <property namespace="CmAdmCtl" class="TCOMAdminCatalogObject">Name</property> of the object.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <property namespace="CmAdmCtl" class="TCOMAdminCatalogObject">Name</property> to determine the name of the item.</para>
<para>Although every item has a name, the primary identifier for collection items is the Key property.</para>
</note>
</comments>
</member>
<member name="P:CmAdmCtl.CmAdmCtl.Valid">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Indicates whether all properties of the object have been successfully read from the catalog data store.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Read <property namespace="CmAdmCtl" class="TCOMAdminCatalogObject">Valid</property> to determine whether the object has been initialized to reflect the properties stored in the COM+ catalog for this item. <property namespace="CmAdmCtl" class="TCOMAdminCatalogObject">Valid</property> is true if the properties were successfully read from the catalog, false if they could not be read from the catalog. For example, <property namespace="CmAdmCtl" class="TCOMAdminCatalogObject">Valid</property> is false for a new item that has never been written to the COM+ catalog.</para>
<class namespace="CmAdmCtl">TCOMAdminCatalogCollection</class> represents a collection from the COM+ catalog.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <class namespace="CmAdmCtl">TCOMAdminCatalogCollection</class> to work with one of the collections in the COM+ catalog. Use the GetCollection method of TCOMAdminCatlog to obtain a <class namespace="CmAdmCtl">TCOMAdminCatalogCollection</class> object for a specific collection. Each collection corresponds to a folder that appears in the Component Services administration tool.</para>
<class namespace="CmAdmCtl">TCOMAdminCatalogCollection</class> implements the ICatalogCollection interface, to let you enumerate, add, remove, and retrieve items in a collection, and to access related collections. Each item is represented by a TCOMAdminCatalogObject instance.</para>
<para>Typically, when you first obtain a <class namespace="CmAdmCtl">TCOMAdminCatalogCollection</class> object, it does not contain data from the catalog for items in the collection. Use the Populate method to read in data for items in the collection before using the other properties and methods.</para>
</note>
</comments>
</member>
<member name="M:CmAdmCtl.CmAdmCtl.Get_Item">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Returns a specified item from the collection.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Call Get_<method namespace="CmAdmCtl" class="TCOMAdminCatalogCollection">Item</method> to access an item in the collection</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">lIndex is the index of the item. It can have any value from 0 to one less than the value of the Count property.</para>
<method namespace="CmAdmCtl" class="TCOMAdminCatalogCollection">Add</method>s a new item to the end of the collection.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Call the <method namespace="CmAdmCtl" class="TCOMAdminCatalogCollection">Add</method> method to create a new object in a collection. <method namespace="CmAdmCtl" class="TCOMAdminCatalogCollection">Add</method> returns the TCOMAdminCatalogObject that represents the new item.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Not all collections allow you to add items. Check the <method namespace="CmAdmCtl" class="TCOMAdminCatalogCollection">Add</method>Enabled property before trying to call <method namespace="CmAdmCtl" class="TCOMAdminCatalogCollection">Add</method>. To install or create objects in collections where <method namespace="CmAdmCtl" class="TCOMAdminCatalogCollection">Add</method>Enabled is false, use the catalog utility interfaces.</para>
<method namespace="CmAdmCtl" class="TCOMAdminCatalogCollection">Add</method> does not commit the change to the catalog data store. To cause the new item to be written to the data store, call the SaveChanges method.</para>
</note>
</comments>
</member>
<member name="M:CmAdmCtl.CmAdmCtl.SaveChanges">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Commits any changes to the collection by writing them to the COM+ catalog.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Call <method namespace="CmAdmCtl" class="TCOMAdminCatalogCollection">SaveChanges</method> to save all pending changes made to the collection and the items it contains to the COM+ catalog data store. <method namespace="CmAdmCtl" class="TCOMAdminCatalogCollection">SaveChanges</method> returns the number of changes written to the COM+ catalog.</para>
</comments>
</member>
<member name="M:CmAdmCtl.CmAdmCtl.GetCollection">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Returns a <method namespace="CmAdmCtl" class="TCOMAdminCatalogCollection">TCOMAdminCatalogCollection</method>Collection object for a specified collection.</para>
<method namespace="CmAdmCtl" class="TCOMAdminCatalogCollection">GetCollection</method> retrieves a sub-collection that is contained in this collection.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">bstrCollName is the name of the desired collection. The available collections depend on your version of the COMAdmin Library. See the Microsoft documentation for a list of the available collections in your version of the COMAdmin Library.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Key is the Key property of the item to which the collection belongs.</para>
<para>The <method namespace="CmAdmCtl" class="TCOMAdminCatalogCollection">TCOMAdminCatalogCollection</method>Collection object that <method namespace="CmAdmCtl" class="TCOMAdminCatalogCollection">GetCollection</method> returns does not contain data from the catalog for items contained in the collection. Use its Populate method to read in data for items in the collection. </para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Returns the utility interface associated with this collection.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Call the <method namespace="CmAdmCtl" class="TCOMAdminCatalogCollection">GetUtilInterface</method> method to obtain an interface to the utility object associated with the collection. Not every collection has an associated utility object. The following table lists the collections for which <method namespace="CmAdmCtl" class="TCOMAdminCatalogCollection">GetUtilInterface</method> returns an interface, along with the name of the associated utility object:</para>
<method namespace="CmAdmCtl" class="TCOMAdminCatalogCollection">Create</method>s a new instance of <method namespace="CmAdmCtl" class="TCOMAdminCatalogCollection">TCOMAdminCatalogCollection</method>.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Call <method namespace="CmAdmCtl" class="TCOMAdminCatalogCollection">Create</method> to instantiate <method namespace="CmAdmCtl" class="TCOMAdminCatalogCollection">TCOMAdminCatalogCollection</method> at runtime. Once you have created a <method namespace="CmAdmCtl" class="TCOMAdminCatalogCollection">TCOMAdminCatalogCollection</method> object, you must bind it to an ICatalogCollection interface before you can use it. Use the ConnectTo method to bind a <method namespace="CmAdmCtl" class="TCOMAdminCatalogCollection">TCOMAdminCatalogCollection</method> object to an ICatalogCollection interface.</para>
<para>When you obtain a <method namespace="CmAdmCtl" class="TCOMAdminCatalogCollection">TCOMAdminCatalogCollection</method> instance from a method on the TCOMAdminCatalog object or from another collection, it is already bound to an ICatalogCollection interface.</para>
</note>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Owner specifies the component (typically a form or data module) that is responsible for freeing the <method namespace="CmAdmCtl" class="TCOMAdminCatalogCollection">TCOMAdminCatalogCollection</method> instance.</para>
</comments>
</member>
<member name="M:CmAdmCtl.CmAdmCtl.Connect">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Not used in <method namespace="CmAdmCtl" class="TCOMAdminCatalogCollection">TCOMAdminCatalogCollection</method>.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not use the <method namespace="CmAdmCtl" class="TCOMAdminCatalogCollection">Connect</method> method. <method namespace="CmAdmCtl" class="TCOMAdminCatalogCollection">TCOMAdminCatalogCollection</method> objects never directly launch the COM server. Rather, obtain a <method namespace="CmAdmCtl" class="TCOMAdminCatalogCollection">TCOMAdminCatalogCollection</method> object that is already bound to an ICatalogCollection interface from a method such as the parent collection's GetCollection method.</para>
</comments>
</member>
<member name="M:CmAdmCtl.CmAdmCtl.ConnectTo">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Connects the <method namespace="CmAdmCtl" class="TCOMAdminCatalogCollection">TCOMAdminCatalogCollection</method> component to an existing ICatalogCollection interface.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <method namespace="CmAdmCtl" class="TCOMAdminCatalogCollection">ConnectTo</method> when the ConnectKind property is ckAttachToInterface. <method namespace="CmAdmCtl" class="TCOMAdminCatalogCollection">ConnectTo</method> allows the <method namespace="CmAdmCtl" class="TCOMAdminCatalogCollection">TCOMAdminCatalogCollection</method> to use an existing ICatalogCollection interface.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Typically, applications do not need to use the <method namespace="CmAdmCtl" class="TCOMAdminCatalogCollection">ConnectTo</method> method. Rather, they obtain a <method namespace="CmAdmCtl" class="TCOMAdminCatalogCollection">TCOMAdminCatalogCollection</method> object that is already bound to an ICatalogCollection object by calling a method such as GetCollection.</para>
</comments>
</member>
<member name="M:CmAdmCtl.CmAdmCtl.Disconnect">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Terminates the connection to the COM server.</para>
<method namespace="CmAdmCtl" class="TCOMAdminCatalogCollection">Disconnect</method> releases the ICatalogCollection interface that <method namespace="CmAdmCtl" class="TCOMAdminCatalogCollection">TCOMAdminCatalogCollection</method> uses to implement its properties and methods. Once you have called <method namespace="CmAdmCtl" class="TCOMAdminCatalogCollection">Disconnect</method>, you can no longer use the <method namespace="CmAdmCtl" class="TCOMAdminCatalogCollection">TCOMAdminCatalogCollection</method> instance, unless you rebind it to another interface using the ConnectTo method.</para>
<method namespace="CmAdmCtl" class="TCOMAdminCatalogCollection">Remove</method> deletes an item from the collection given its index, and re-indexes the items with higher indices. These changes are not reflected on the COM+ catalog data store until you call SaveChanges.</para>
</comments>
</member>
<member name="M:CmAdmCtl.CmAdmCtl.Populate">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Fills the collection object with items from the catalog.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Call <method namespace="CmAdmCtl" class="TCOMAdminCatalogCollection">Populate</method> to set the items of the collection to those currently saved for this collection in the COM+ catalog. When you first obtain an instance of <method namespace="CmAdmCtl" class="TCOMAdminCatalogCollection">TCOMAdminCatalogCollection</method>, it does not yet contain any items, and you must call <method namespace="CmAdmCtl" class="TCOMAdminCatalogCollection">Populate</method> to fill it with the associated items.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">After making changes to the collection (such as adding or removing objects or changing object properties) are not saved to the COM+ catalog until you call the SaveChanges method. Thus, if you call <method namespace="CmAdmCtl" class="TCOMAdminCatalogCollection">Populate</method> after making changes but before calling SaveChanges, all your changes are rolled back and the collection is restored to the state that is saved in the COM+ catalog.</para>
</comments>
</member>
<member name="M:CmAdmCtl.CmAdmCtl.PopulateByKey">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Populates the collection with information for the specified objects.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <method namespace="CmAdmCtl" class="TCOMAdminCatalogCollection">PopulateByKey</method> to refresh the items in the collection that have a specified key. <method namespace="CmAdmCtl" class="TCOMAdminCatalogCollection">PopulateByKey</method> reloads all items from the COM+ catalog that have the specified keys. </para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">aKeys is an array of Key values that represent the Key property for each item to be loaded from the COM+ catalog.</para>
<method namespace="CmAdmCtl" class="TCOMAdminCatalogCollection">PopulateByQuery</method> is not currently implemented.</para>
</comments>
</member>
<member name="M:CmAdmCtl.CmAdmCtl.Destroy">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Frees an instance of <method namespace="CmAdmCtl" class="TCOMAdminCatalogCollection">TCOMAdminCatalogCollection</method>
</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call <method namespace="CmAdmCtl" class="TCOMAdminCatalogCollection">Destroy</method> directly in an application. Instead, call Free. Free checks that the <method namespace="CmAdmCtl" class="TCOMAdminCatalogCollection">TCOMAdminCatalogCollection</method> component reference is not nil before calling <method namespace="CmAdmCtl" class="TCOMAdminCatalogCollection">Destroy</method>.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Note that freeing the <method namespace="CmAdmCtl" class="TCOMAdminCatalogCollection">TCOMAdminCatalogCollection</method> object does not remove the collection from the COM+ catalog, it merely deletes the object that lets you work with that collection.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Provides access to the default interface for the component.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <property namespace="CmAdmCtl" class="TCOMAdminCatalogCollection">DefaultInterface</property> to access the default interface for <property namespace="CmAdmCtl" class="TCOMAdminCatalogCollection">TCOMAdminCatalogCollection</property>. This is the ICatalogCollection interface, whose properties and methods are surfaced as properties and methods of <property namespace="CmAdmCtl" class="TCOMAdminCatalogCollection">TCOMAdminCatalogCollection</property>.</para>
</comments>
</member>
<member name="P:CmAdmCtl.CmAdmCtl.Count">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Indicates the number of items in the collection.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <property namespace="CmAdmCtl" class="TCOMAdminCatalogCollection">Count</property> to determine the number of items in the collection. <property namespace="CmAdmCtl" class="TCOMAdminCatalogCollection">Count</property> acts as an upper bound for the index to the Get_Item method.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">When you first obtain a <property namespace="CmAdmCtl" class="TCOMAdminCatalogCollection">TCOMAdminCatalogCollection</property> object, the value of <property namespace="CmAdmCtl" class="TCOMAdminCatalogCollection">Count</property> is 0. Call the Populate method to fill the collection with its items to determine the actual number of items in this collection of the COM+ catalog.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">To change the value of <property namespace="CmAdmCtl" class="TCOMAdminCatalogCollection">Count</property>, add items using the Add method or delete them using the Remove method.</para>
</comments>
</member>
<member name="P:CmAdmCtl.CmAdmCtl.Name">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Indicates the <property namespace="CmAdmCtl" class="TCOMAdminCatalogCollection">Name</property> of the collection.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <property namespace="CmAdmCtl" class="TCOMAdminCatalogCollection">Name</property> to determine the name of the collection. This is the name by which you can identify the collection, for example, when calling the GetCollection method to obtain a <property namespace="CmAdmCtl" class="TCOMAdminCatalogCollection">TCOMAdminCatalogCollection</property> instance.</para>
</comments>
</member>
<member name="P:CmAdmCtl.CmAdmCtl.AddEnabled">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Indicates whether the Add method can add items to the collection.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Read <property namespace="CmAdmCtl" class="TCOMAdminCatalogCollection">AddEnabled</property> to determine whether your application can add items to this collection. When <property namespace="CmAdmCtl" class="TCOMAdminCatalogCollection">AddEnabled</property> is false, the Add method fails.</para>
</comments>
</member>
<member name="P:CmAdmCtl.CmAdmCtl.RemoveEnabled">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Indicates whether the Remove method can remove items from the collection.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Read <property namespace="CmAdmCtl" class="TCOMAdminCatalogCollection">RemoveEnabled</property> to determine whether your application can remove items from this collection. When <property namespace="CmAdmCtl" class="TCOMAdminCatalogCollection">RemoveEnabled</property> is false, the Remove method fails.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Indicates the major version number of the COMAdmin Library</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <property namespace="CmAdmCtl" class="TCOMAdminCatalogCollection">DataStoreMajorVersion</property> to determine the major version number of the COMAdmin Library. This is the same as the MajorVersion property of the TCOMAdminCatalog object that contains this collection.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Indicates the minor version number of the COMAdmin Library</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <property namespace="CmAdmCtl" class="TCOMAdminCatalogCollection">DataStoreMinorVersion</property> to determine the minor version number of the COMAdmin Library. This is the same as the MinorVersion property of the TCOMAdminCatalog object that contains this collection.</para>
<class namespace="ExtActns">TCustomFileRun</class> is the base class for actions that perform a specified operation on a file.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <class namespace="ExtActns">TCustomFileRun</class> as a base class when defining a pre-defined action that uses ShellExecute to perform an operation on a file. <class namespace="ExtActns">TCustomFileRun</class> implements properties for specifying</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">A target file or the option of letting the user select one using a browse dialog.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The operation to perform on the target file.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Parameters to supply to an external application that performs the desired operation.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The startup directory for the external application.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The state of the window that appears when performing the specified operation.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">When the ExecuteTarget method is called, <class namespace="ExtActns">TCustomFileRun</class> uses these properties to call the Windows API ShellExecute, which performs the specified operation if it is listed as applicable to the target file type in the system registry. Depending on the operation, this may involve launching an external application, calling a dynamic-link library (DLL), or displaying a system dialog (such as the file properties dialog).</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not add <class namespace="ExtActns">TCustomFileRun</class> to an action list or action manager. To add a generic file run action, use TFileRun instead. </para>
</comments>
</member>
<member name="M:ExtActns.ExtActns.HandlesTarget">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Indicates whether the action can execute.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call the <method namespace="ExtActns" class="TCustomFileRun">HandlesTarget</method> method. This method is called automatically when the user invokes an object (such as a tool button or menu item) that is linked to this action. The <method namespace="ExtActns" class="TCustomFileRun">HandlesTarget</method> method lets the action object indicate whether it is appropriate to execute at this time with the object specified by the Target parameter as a "target".</para>
<method namespace="ExtActns" class="TCustomFileRun">HandlesTarget</method> always returns true, because <method namespace="ExtActns" class="TCustomFileRun">TCustomFileRun</method> does not use the target object.</para>
<method namespace="ExtActns" class="TCustomFileRun">Create</method>s an instance of <method namespace="ExtActns" class="TCustomFileRun">TCustomFileRun</method>.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Most applications do not need to call the <method namespace="ExtActns" class="TCustomFileRun">TCustomFileRun</method> constructor because actions are added at design time to an action list or action manager. </para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">AOwner specifies the Owner for the action. This is the component that is responsible for freeing the <method namespace="ExtActns" class="TCustomFileRun">TCustomFileRun</method> instance.</para>
<method namespace="ExtActns" class="TCustomFileRun">Create</method> initializes the action's properties and creates a default TOpenDialog instance to act as the value of the BrowseDlg property.</para>
</comments>
</member>
<member name="M:ExtActns.ExtActns.ExecuteTarget">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Performs the specified operation on a target file.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call the <method namespace="ExtActns" class="TCustomFileRun">ExecuteTarget</method> method. This method is called automatically when the action fires in response to a user action (for example, when the user selects a menu item or presses a tool button that is linked to this action).</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Target is the currently active object when the action fires.</para>
<method namespace="ExtActns" class="TCustomFileRun">ExecuteTarget</method> ignores the Target parameter and performs the operation specified by the Operation property on the target file specified by the FileName property or chosen by the user if the value of the Browse property is true. The values of Parameters, ShowCmd, and Directory, as well as the window handle for ParentControl are passed to Windows with the request to perform the specified operation.</para>
<para>If the attempt to perform the operation fails, the HInst property contains an error code that indicates what was wrong. If the attempt succeeds, the HInst property is greater than 32.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Creates an instance of TOpenDialog and assigns it as the value of the BrowseDlg property.</para>
<method namespace="ExtActns" class="TCustomFileRun">SetupBrowseDialog</method> generates the default open dialog instance for the dialog that appears when the Browse property is true. It assigns this newly created dialog component as the value of the BrowseDlg property.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Most applications do not need to call <method namespace="ExtActns" class="TCustomFileRun">SetupBrowseDialog</method> because it is called automatically by the <method namespace="ExtActns" class="TCustomFileRun">TCustomFileRun</method> constructor.</para>
</comments>
</member>
<member name="M:ExtActns.ExtActns.UpdateTarget">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Enables or disables the action, depending on current conditions.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call the <method namespace="ExtActns" class="TCustomFileRun">UpdateTarget</method> method. This method is called automatically when application is idle so that the action can update itself to reflect current conditions.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">In <method namespace="ExtActns" class="TCustomFileRun">TCustomFileRun</method>, <method namespace="ExtActns" class="TCustomFileRun">UpdateTarget</method> checks whether it can obtain a target file. If the FileName property specifies a target file, or if the Browse property is true, indicating that users can select a target file, then <method namespace="ExtActns" class="TCustomFileRun">UpdateTarget</method> sets Enabled to true. If not, <method namespace="ExtActns" class="TCustomFileRun">UpdateTarget</method> sets Enabled to false.</para>
</comments>
</member>
<member name="P:ExtActns.ExtActns.HInst">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Indicates the Windows error code that is returned when <property namespace="ExtActns" class="TCustomFileRun">TCustomFileRun</property> launches the external application.</para>
<property namespace="ExtActns" class="TCustomFileRun">TCustomFileRun</property> sets <property namespace="ExtActns" class="TCustomFileRun">HInst</property> to the Windows return value when it launches the external application. If this value is less than 32, it represents an error code that indicates why the application failed to launch. This value is only available after the action has executed.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The following table lists the possible error values (defined in shellapi.pas) that can be the value of <property namespace="ExtActns" class="TCustomFileRun">HInst</property> when it is less than 32.</para>
<para>The operating system is out of memory or resources.</para>
</td>
</tr>
<tr>
<td>
<para>ERROR_FILE_NOT_FOUND</para>
</td>
<td>
<para>The specified file was not found.</para>
</td>
</tr>
<tr>
<td>
<para>ERROR_PATH_NOT_FOUND</para>
</td>
<td>
<para>The specified path was not found.</para>
</td>
</tr>
<tr>
<td>
<para>ERROR_BAD_FORMAT</para>
</td>
<td>
<para>The .exe file is invalid (does not have the correct internal format).</para>
</td>
</tr>
<tr>
<td>
<para>SE_ERR_ACCESSDENIED</para>
</td>
<td>
<para>The operating system denied access to the specified file. </para>
</td>
</tr>
<tr>
<td>
<para>SE_ERR_ASSOCINCOMPLETE</para>
</td>
<td>
<para>The file name association is incomplete or invalid.</para>
</td>
</tr>
<tr>
<td>
<para>SE_ERR_DDEBUSY</para>
</td>
<td>
<para>A DDE transaction could not be completed because other DDE transactions were being processed.</para>
</td>
</tr>
<tr>
<td>
<para>SE_ERR_DDEFAIL</para>
</td>
<td>
<para>A DDE transaction failed.</para>
</td>
</tr>
<tr>
<td>
<para>SE_ERR_DDETIMEOUT</para>
</td>
<td>
<para>A DDE transaction could not be completed because the request timed out.</para>
</td>
</tr>
<tr>
<td>
<para>SE_ERR_DLLNOTFOUND</para>
</td>
<td>
<para>A specified dynamic-link library was not found. </para>
</td>
</tr>
<tr>
<td>
<para>SE_ERR_FNF</para>
</td>
<td>
<para>The specified file was not found. </para>
</td>
</tr>
<tr>
<td>
<para>SE_ERR_NOASSOC</para>
</td>
<td>
<para>There is no application associated with the given file name extension or TCustomFileRun attempted to print an unprintable file.</para>
</td>
</tr>
<tr>
<td>
<para>SE_ERR_OOM</para>
</td>
<td>
<para>There was not enough memory to complete the operation.</para>
</td>
</tr>
<tr>
<td>
<para>SE_ERR_PNF</para>
</td>
<td>
<para>The specified path was not found.</para>
</td>
</tr>
<tr>
<td>
<para>SE_ERR_SHARE</para>
</td>
<td>
<para>A sharing violation occurred.</para>
</td>
</tr>
</table>
</comments>
</member>
<member name="P:ExtActns.ExtActns.Browse">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Controls whether an open dialog automatically appears to let users browse for the target file.</para>
<property namespace="ExtActns" class="TCustomFileRun">Browse</property> controls whether <property namespace="ExtActns" class="TCustomFileRun">TCustomFileRun</property> displays the dialog specified by <property namespace="ExtActns" class="TCustomFileRun">Browse</property>Dlg when it fires, letting users select the target file to be launched. When <property namespace="ExtActns" class="TCustomFileRun">Browse</property> is true, firing <property namespace="ExtActns" class="TCustomFileRun">TCustomFileRun</property> displays the open dialog specified by <property namespace="ExtActns" class="TCustomFileRun">Browse</property>Dlg, and then (if the user does not cancel) performs the operation specified by Operation on the chosen file. When <property namespace="ExtActns" class="TCustomFileRun">Browse</property> is false, your application must specify the target file by explicitly setting the FileName property.</para>
<para>When <property namespace="ExtActns" class="TCustomFileRun">Browse</property> is true, <property namespace="ExtActns" class="TCustomFileRun">TCustomFileRun</property> ignores the FileName property.</para>
</note>
</comments>
</member>
<member name="P:ExtActns.ExtActns.BrowseDlg">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Specifies the dialog that allows users to select the target file to run.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <property namespace="ExtActns" class="TCustomFileRun">BrowseDlg</property> when the Browse property is true to configure the dialog that users use to select a target file. By expanding <property namespace="ExtActns" class="TCustomFileRun">BrowseDlg</property> in the Object Inspector at design time, or by setting its properties at runtime, you can customize the way the dialog first appears when the action fires.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">By default, <property namespace="ExtActns" class="TCustomFileRun">BrowseDlg</property> is an internally-generated TOpenDialog object. When using the default dialog, there is no need to explicitly add a dialog component to your application. If you want to use a specialized TOpenDialog descendant (such as TOpenPictureDialog), however, set <property namespace="ExtActns" class="TCustomFileRun">BrowseDlg</property> to an open dialog component you place in the same form or data module as the <property namespace="ExtActns" class="TCustomFileRun">TCustomFileRun</property> action.</para>
</comments>
</member>
<member name="P:ExtActns.ExtActns.Directory">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Specifies the default directory for the externally-launched application.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Set <property namespace="ExtActns" class="TCustomFileRun">Directory</property> to specify a default (startup) directory for the external application that is launched when the action fires.</para>
</comments>
</member>
<member name="P:ExtActns.ExtActns.FileName">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Specifies the target file to run.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Set <property namespace="ExtActns" class="TCustomFileRun">FileName</property> to specify the file on which <property namespace="ExtActns" class="TCustomFileRun">TCustomFileRun</property> performs the operation specified by Operation when the action fires. <property namespace="ExtActns" class="TCustomFileRun">FileName</property> can specify a file that is opened using an external application (such as a .txt file that causes a text editor to launch), or it can specify an executable file for the application itself. When the action fires in response to a user action, <property namespace="ExtActns" class="TCustomFileRun">TCustomFileRun</property> launches an external application or dll to perform Operation on the file specified by <property namespace="ExtActns" class="TCustomFileRun">FileName</property>.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Indicates what <property namespace="ExtActns" class="TCustomFileRun">TCustomFileRun</property> should do with the target file.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Set <property namespace="ExtActns" class="TCustomFileRun">Operation</property> to indicate what should be done with the target file when <property namespace="ExtActns" class="TCustomFileRun">TCustomFileRun</property> fires. The possible values for <property namespace="ExtActns" class="TCustomFileRun">Operation</property> depend on the particular file or folder specified by FileName or selected by the user when Browse is true. The possible operations for a particular file or folder are listed in the system Registry.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The following strings are usually valid: </para>
<para>TCustomFileRun opens an editor. If FileName is not an editable file, the action fails.</para>
</td>
</tr>
<tr>
<td>
<para>explore</para>
</td>
<td>
<para>TCustomFileRun launches the Windows explorer for the folder specified by FileName.</para>
</td>
</tr>
<tr>
<td>
<para>open</para>
</td>
<td>
<para>TCustomFileRun opens the file specified by FileName. FileName can be an executable file, a file associated with an application that can open it, or a folder.</para>
</td>
</tr>
<tr>
<td>
<para>print</para>
</td>
<td>
<para>TCustomFileRun prints the file specified by FileName. If FileName is a binary file (for example, if it is an executable), the action fails.</para>
</td>
</tr>
<tr>
<td>
<para>properties</para>
</td>
<td>
<para>TCustomFileRun displays the file or folder's properties in a Properties dialog.</para>
<para>If <property namespace="ExtActns" class="TCustomFileRun">Operation</property> is an empty string, Windows tries to use the "open" operation. If the specified file does not support the "open" operation, Windows tries to use the default operation. If there is no "open" operation and no default operation, and if the application is running on Windows 2000 or later, Windows uses the first verb listed in the Registry.</para>
</note>
</comments>
</member>
<member name="P:ExtActns.ExtActns.Parameters">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Specifies parameters to be passed to the application when the target file is an executable.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <property namespace="ExtActns" class="TCustomFileRun">Parameters</property> to specify any parameters that should be passed to the external application when it is launched. Only set <property namespace="ExtActns" class="TCustomFileRun">Parameters</property> if FileName is the name of an Executable file or the user is browsing for an executable file. If the target file holds data associated with the application to launch, <property namespace="ExtActns" class="TCustomFileRun">Parameters</property> should be an empty string.</para>
</comments>
</member>
<member name="P:ExtActns.ExtActns.ShowCmd">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Specifies how the launched application window appears.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <property namespace="ExtActns" class="TCustomFileRun">ShowCmd</property> to indicate how you want the application window to appear when <property namespace="ExtActns" class="TCustomFileRun">TCustomFileRun</property> performs the specified operation on its target file. <property namespace="ExtActns" class="TCustomFileRun">ShowCmd</property> can have any of the following values:</para>
<class namespace="ExtActns">TFileRun</class> is the standard action for performing a specified operation on a file.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Add <class namespace="ExtActns">TFileRun</class> to an action list to let your application launch an external application or dll in response to user actions. Controls linked to this action cause your application to perform the operation specified by the Operation property on the file specified by the FileName property. </para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Before this action fires, configure its properties to indicate what application to launch and how to launch it:</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">To indicate the target file to run, set the FileName property to the name of a file on which the external application operates or to the name of the application's executable file. If you want to let the user select the file name instead when the action fires, set the Browse property to true, and an open dialog appears when the action fires.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">To indicate what action to perform on the specified file, set the Operation property.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">To supply parameters to the external application when it is launched, use the Parameters property.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">To specify a default directory for the external application, use the Directory property.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">To control how the external application's window appears (minimized, maximized, hidden, and so on), use the ShowCmd property.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">If the external application needs a parent window (to parent a dialog such as a properties dialog), or if you want to allow <class namespace="ExtActns">TFileRun</class> to display error messages, use the ParentControl property.</para>
<class namespace="ExtActns">TRichEditAction</class> is the base class for action objects that apply rich text attributes to a rich edit control.</para>
<class namespace="ExtActns">TRichEditAction</class> implements the common behavior for actions that assign text attributes to a rich edit control. Each descendant class represents a specific text attribute. Do not use <class namespace="ExtActns">TRichEditAction</class> directly in an application. Instead, use a <class namespace="ExtActns">TRichEditAction</class> descendant such as TRichEditBold, TRichEditItalic, TRichEditUnderline, TRichEditStrikeOut, TRichEditAlignCenter, TRichEditAlignLeft, TRichEditAlignRight, or TRichEditBullets.</para>
<class namespace="ExtActns">TRichEditAction</class> ensures that the action is only works with a TCustomRichEdit descendant as a target. <class namespace="ExtActns">TRichEditAction</class> descendants toggle their specific text attribute in the target rich edit control: if the attribute is set, it is removed, and if it is not set (or set for only some of the text), the action sets it. If the target rich edit control has a selection, the attribute is toggled for the selected text only. If there is no selection, the attribute is toggled for all of the text.</para>
</comments>
</member>
<member name="M:ExtActns.ExtActns.HandlesTarget">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Indicates whether the action can execute its function.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call the <method namespace="ExtActns" class="TRichEditAction">HandlesTarget</method> method. This method is called automatically when the user invokes an object (such as a tool button or menu item) that is linked to this action. The <method namespace="ExtActns" class="TRichEditAction">HandlesTarget</method> method provides the action object with an opportunity to indicate whether it is appropriate to execute at this time with the object specified by the Target parameter as a "target".</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Target is the currently active object.</para>
<method namespace="ExtActns" class="TRichEditAction">HandlesTarget</method> returns true if Target is a TCustomRichEdit descendant, false otherwise.</para>
<method namespace="ExtActns" class="TRichEditAction">Create</method>s an instance of <method namespace="ExtActns" class="TRichEditAction">TRichEditAction</method>.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Most applications do not need to call the <method namespace="ExtActns" class="TRichEditAction">TRichEditAction</method> constructor because actions are added at design time to an action list or action manager. </para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">AOwner specifies the Owner for the action. This is the component that is responsible for freeing the <method namespace="ExtActns" class="TRichEditAction">TRichEditAction</method> instance.</para>
<class namespace="ExtActns">TRichEditBold</class> toggles the bold attribute of the currently selected text in a rich edit control.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Add <class namespace="ExtActns">TRichEditBold</class> to an action list to let users control whether the selected text in a rich edit control is bold. Controls such as menu items and tool buttons linked to this action cause the application to toggle the bold attribute of selected text (or of all text if there is no text selected).</para>
<class namespace="ExtActns">TRichEditBold</class> is designed to work with a rich edit control (TCustomRichEdit descendant) as a target. It automatically disables itself if the active control in a form is not a rich edit control, and adds or removes a check mark to indicate whether the target control's text is bold.</para>
</comments>
</member>
<member name="M:ExtActns.ExtActns.ExecuteTarget">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Toggles the fsBold style of the target rich edit control's text attributes.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call the <method namespace="ExtActns" class="TRichEditBold">ExecuteTarget</method> method. This method is called automatically when the action fires in response to a user action (for example, when the user selects a menu item or presses a tool button that is linked to this action).</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Target is the currently active object when the action fires.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">If the target rich edit control has a selection, <method namespace="ExtActns" class="TRichEditBold">ExecuteTarget</method> toggles the fsBold style of the selected text attributes (SelAttributes property), adding the fsBold property if the selected text is not all bold and removing it if the selected text is entirely bold. Note that if the selected text contains both bold and non-bold text, this results in the text becoming entirely bold.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">If the target rich edit control has no selection, <method namespace="ExtActns" class="TRichEditBold">ExecuteTarget</method> toggles the default fsBold style of the control. This changes the bold attribute of all text that has not had a specific text attribute applied.</para>
</comments>
</member>
<member name="M:ExtActns.ExtActns.UpdateTarget">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Sets the Checked property to reflect whether the target control's text is bold.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call the <method namespace="ExtActns" class="TRichEditBold">UpdateTarget</method> method. This method is called automatically when the application is idle so that actions can update themselves according to current conditions.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Target is the currently active object when the action fires.</para>
<method namespace="ExtActns" class="TRichEditBold">UpdateTarget</method> sets the Checked property to true if Target is a rich edit control whose selected text is bold, otherwise it sets Checked to false.</para>
<class namespace="ExtActns">TRichEditItalic</class> toggles the italic attribute of the currently selected text in a rich edit control.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Add <class namespace="ExtActns">TRichEditItalic</class> to an action list to let users control whether the selected text in a rich edit control is italic. Controls such as menu items and tool buttons linked to this action cause the application to toggle the italic attribute of selected text (or of all text if there is no text selected).</para>
<class namespace="ExtActns">TRichEditItalic</class> is designed to work with a rich edit control (TCustomRichEdit descendant) as a target. It automatically disables itself if the active control in a form is not a rich edit control, and adds or removes a check mark to reflect whether the target control's text is italic.</para>
<class namespace="ExtActns">TRichEditUnderline</class> toggles the underline attribute of the currently selected text in a rich edit control.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Add <class namespace="ExtActns">TRichEditUnderline</class> to an action list to let users control whether the selected text in a rich edit control is underlined. Controls such as menu items and tool buttons linked to this action cause the application to toggle the underline attribute of selected text (or of all text if there is no text selected).</para>
<class namespace="ExtActns">TRichEditUnderline</class> is designed to work with a rich edit control (TCustomRichEdit descendant) as a target. It automatically disables itself if the active control in a form is not a rich edit control, and adds or removes a check to indicate whether the target control's text is underlined.</para>
</comments>
</member>
<member name="M:ExtActns.ExtActns.ExecuteTarget">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Toggles the fsUnderline style of the target rich edit control's text attributes.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call the <method namespace="ExtActns" class="TRichEditUnderline">ExecuteTarget</method> method. This method is called automatically when the action fires in response to a user action (for example, when the user selects a menu item or presses a tool button that is linked to this action).</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Target is the currently active object when the action fires.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">If the target rich edit control has a selection, <method namespace="ExtActns" class="TRichEditUnderline">ExecuteTarget</method> toggles the fsUnderline style of the selected text attributes (SelAttributes property), adding the fsUnderline property if the selected text is not all underlined and removing it if the selected text is entirely underlined. Note that if the selected text contains both underlined and non-underlined text, this results in the text becoming entirely underlined.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">If the target rich edit control has no selection, <method namespace="ExtActns" class="TRichEditUnderline">ExecuteTarget</method> toggles the default fsUnderline style of the control. This changes the underlined attribute of all text that has not had a specific text attribute applied.</para>
</comments>
</member>
<member name="M:ExtActns.ExtActns.UpdateTarget">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Sets the Checked property to reflect whether the target control's text is underlined.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call the <method namespace="ExtActns" class="TRichEditUnderline">UpdateTarget</method> method. This method is called automatically when the application is idle so that actions can update themselves according to current conditions.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Target is the currently active object when the action fires.</para>
<method namespace="ExtActns" class="TRichEditUnderline">UpdateTarget</method> checks the selected text of the target rich edit control (which is specified by the Control property or the Target parameter) is underlined. If the selected text is underlined, <method namespace="ExtActns" class="TRichEditUnderline">UpdateTarget</method> sets the Checked property to true, otherwise it sets Checked to false.</para>
<class namespace="ExtActns">TRichEditStrikeOut</class> toggles the strikeout attribute of the currently selected text in a rich edit control.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Add <class namespace="ExtActns">TRichEditStrikeOut</class> to an action list to let users control whether the selected text in a rich edit control has a line through it. Controls such as menu items and tool buttons linked to this action cause the application to toggle the strikeout attribute of selected text (or of all text if there is no text selected).</para>
<class namespace="ExtActns">TRichEditStrikeOut</class> is designed to work with a rich edit control (TCustomRichEdit descendant) as a target. It automatically disables itself if the active control in a form is not a rich edit control and adds or removes a check mark to indicate whether the target control's text has the strike out attribute.</para>
</comments>
</member>
<member name="M:ExtActns.ExtActns.ExecuteTarget">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Toggles the fsStrikeOut style of the target rich edit control's text attributes.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call the <method namespace="ExtActns" class="TRichEditStrikeOut">ExecuteTarget</method> method. This method is called automatically when the action fires in response to a user action (for example, when the user selects a menu item or presses a tool button that is linked to this action).</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Target is the currently active object when the action fires.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">If the target rich edit control has a selection, <method namespace="ExtActns" class="TRichEditStrikeOut">ExecuteTarget</method> toggles the fsStrikeOut style of the selected text attributes (SelAttributes property), adding the fsStrikeOut property if the selected text is not all struck out and removing it if the selected text is entirely struck out. Note that if the selected text contains both strikeout and non-strikeout text, this results in the text becoming entirely struck out.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">If the target rich edit control has no selection, <method namespace="ExtActns" class="TRichEditStrikeOut">ExecuteTarget</method> toggles the default fsStrikeOut style of the control. This changes the strikeout attribute of all text that has not had a specific text attribute applied.</para>
</comments>
</member>
<member name="M:ExtActns.ExtActns.UpdateTarget">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Sets the Checked property to reflect whether the target control's text includes a strikeout line.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call the <method namespace="ExtActns" class="TRichEditStrikeOut">UpdateTarget</method> method. This method is called automatically when the application is idle so that actions can update themselves according to current conditions.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Target is the currently active object when the action fires.</para>
<method namespace="ExtActns" class="TRichEditStrikeOut">UpdateTarget</method> checks whether Target is a rich edit control with the strikeout font attribute on its selected text. If the selected text is struck out, <method namespace="ExtActns" class="TRichEditStrikeOut">UpdateTarget</method> sets the Checked property to true, otherwise it sets Checked to false.</para>
<class namespace="ExtActns">TRichEditBullets</class> toggles whether the current paragraph of a rich edit control is bulleted.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Add <class namespace="ExtActns">TRichEditBullets</class> to an action list to let users control whether the current paragraphs in a rich edit control are bulleted. Controls such as menu items and tool buttons linked to this action cause the application to toggle the bulleted attribute of all paragraphs that contain selected text (or the paragraph with the cursor if no text is selected).</para>
<class namespace="ExtActns">TRichEditBullets</class> is designed to work with a rich edit control (TCustomRichEdit descendant) as a target. It automatically disables itself if the active control in a form is not a rich edit control and adds or removes a check mark to indicate whether that control's paragraphs are bulleted.</para>
</comments>
</member>
<member name="M:ExtActns.ExtActns.UpdateTarget">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Configures the action, depending on current conditions.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call the UpdateTarget method. This method is called automatically when the application is idle so that actions can update themselves according to current conditions.</para>
<class namespace="ExtActns">TRichEditAlignLeft</class> left-justifies the text in the current paragraph of a rich edit control.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Add <class namespace="ExtActns">TRichEditAlignLeft</class> to an action list to let users left-justify the text in a rich edit control. Controls such as menu items and tool buttons linked to this action cause the application to align the text in all paragraphs that contain selected text (or the paragraph with the cursor if no text is selected) to the left margin.</para>
<class namespace="ExtActns">TRichEditAlignLeft</class> is designed to work with a rich edit control (TCustomRichEdit descendant) as a target. It automatically disables itself if the active control in a form is not a rich edit control, and adds or removes a check mark to indicate whether the text in the target control is left-aligned.</para>
</comments>
</member>
<member name="M:ExtActns.ExtActns.ExecuteTarget">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Left-justifies the text in the current paragraph of the target rich edit control.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call the <method namespace="ExtActns" class="TRichEditAlignLeft">ExecuteTarget</method> method. This method is called automatically when the action fires in response to a user action (for example, when the user selects a menu item or presses a tool button that is linked to this action).</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Target is the currently active object when the action fires.</para>
<method namespace="ExtActns" class="TRichEditAlignLeft">ExecuteTarget</method> checks that Target is a rich edit control, and if so, sets its Alignment property to taLeftJustify.</para>
</comments>
</member>
<member name="M:ExtActns.ExtActns.UpdateTarget">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Configures the action, depending on current conditions.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call the <method namespace="ExtActns" class="TRichEditAlignLeft">UpdateTarget</method> method. This method is called automatically when the application is idle so that actions can update themselves according to current conditions.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">In <method namespace="ExtActns" class="TRichEditAlignLeft">TRichEditAlignLeft</method>, <method namespace="ExtActns" class="TRichEditAlignLeft">UpdateTarget</method> sets Enabled to true and sets the Checked property to true if the text in the current paragraph is left justified.</para>
<class namespace="ExtActns">TRichEditAlignRight</class> right-justifies the text in the current paragraph of a rich edit control.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Add <class namespace="ExtActns">TRichEditAlignRight</class> to an action list to let users right-justify the text in a rich edit control. Controls such as menu items and tool buttons linked to this action cause the application to align the text in all paragraphs that contain selected text (or the paragraph with the cursor if no text is selected) to the right margin.</para>
<class namespace="ExtActns">TRichEditAlignRight</class> is designed to work with a rich edit control (TCustomRichEdit descendant) as a target. It automatically disables itself if the active control in a form is not a rich edit control, and adds or removes a check mark to indicate whether the current paragraph of the target control is right-aligned.</para>
</comments>
</member>
<member name="M:ExtActns.ExtActns.ExecuteTarget">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Right-justifies the text in the current paragraph of the target rich edit control.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call the <method namespace="ExtActns" class="TRichEditAlignRight">ExecuteTarget</method> method. This method is called automatically when the action fires in response to a user action (for example, when the user selects a menu item or presses a tool button that is linked to this action).</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Target is the currently active object when the action fires.</para>
<method namespace="ExtActns" class="TRichEditAlignRight">ExecuteTarget</method> checks that Target is a rich edit control, and if so, sets its Alignment property to taRightJustify.</para>
</comments>
</member>
<member name="M:ExtActns.ExtActns.UpdateTarget">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Configures the action, depending on current conditions.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call the <method namespace="ExtActns" class="TRichEditAlignRight">UpdateTarget</method> method. This method is called automatically when the application is idle so that actions can update themselves according to current conditions.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">In <method namespace="ExtActns" class="TRichEditAlignRight">TRichEditAlignRight</method>, <method namespace="ExtActns" class="TRichEditAlignRight">UpdateTarget</method> sets Enabled to true and sets the Checked property to true if the text in the current paragraph is right justified.</para>
<class namespace="ExtActns">TRichEditAlignCenter</class> centers the text horizontally in the current paragraph of a rich edit control.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Add <class namespace="ExtActns">TRichEditAlignCenter</class> to an action list to let users center the text in a rich edit control. Controls such as menu items and tool buttons linked to this action cause the application to center the text in all paragraphs that contain selected text (or the paragraph with the cursor if no text is selected).</para>
<class namespace="ExtActns">TRichEditAlignCenter</class> is designed to work with a rich edit control (TCustomRichEdit descendant) as a target. It automatically disables itself if the active control in a form is not a rich edit control, and adds or removes a check mark to reflect whether the text in the target edit control is centered.</para>
</comments>
</member>
<member name="M:ExtActns.ExtActns.ExecuteTarget">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Centers the text in the current paragraph of the target rich edit control.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call the <method namespace="ExtActns" class="TRichEditAlignCenter">ExecuteTarget</method> method. This method is called automatically when the action fires in response to a user action (for example, when the user selects a menu item or presses a tool button that is linked to this action).</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Target is the currently active object when the action fires.</para>
<method namespace="ExtActns" class="TRichEditAlignCenter">ExecuteTarget</method> checks that Target is a rich edit control, and if so, sets its Alignment property to taCenter.</para>
</comments>
</member>
<member name="M:ExtActns.ExtActns.UpdateTarget">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Configures the action, depending on current conditions.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call the <method namespace="ExtActns" class="TRichEditAlignCenter">UpdateTarget</method> method. This method is called automatically when the application is idle so that actions can update themselves according to current conditions.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">In <method namespace="ExtActns" class="TRichEditAlignCenter">TRichEditAlignCenter</method>, <method namespace="ExtActns" class="TRichEditAlignCenter">UpdateTarget</method> sets Enabled to true and sets the Checked property to true if the text in the current paragraph is centered.</para>
<class namespace="ExtActns">TTabAction</class> implements the common behavior for actions that operate on tabbed controls (TCustomTabControl descendants). Each descendant class is designed to perform a specific function in a tabbed dialog such as a wizard. Do not use <class namespace="ExtActns">TTabAction</class> directly in an application. Instead, use a <class namespace="ExtActns">TTabAction</class> descendant such as TNextTab or TPreviousTab.</para>
<class namespace="ExtActns">TTabAction</class> introduces the TabControl property, which specifies the page control or tab control on which this action operates. It ensures that the action is only enabled when the TabControl property is assigned to an enabled TPageControl or TTabControl object.</para>
</comments>
</member>
<member name="M:ExtActns.ExtActns.HandlesTarget">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Indicates whether the action can execute its function.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call the <method namespace="ExtActns" class="TTabAction">HandlesTarget</method> method. This method is called automatically when the user invokes an object (such as a tool button or menu item) that is linked to this action. The <method namespace="ExtActns" class="TTabAction">HandlesTarget</method> method provides an action object with an opportunity to indicate whether it is appropriate to execute at this time with the object specified by the Target parameter as a "target".</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Target is the currently active object.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">In <method namespace="ExtActns" class="TTabAction">TTabAction</method>, <method namespace="ExtActns" class="TTabAction">HandlesTarget</method> ignores the Target parameter, and checks, instead, whether the TabControl property has been set. If a target tab control has been assigned to the TabControl property, <method namespace="ExtActns" class="TTabAction">HandlesTarget</method> returns true. Otherwise, it returns false.</para>
<method namespace="ExtActns" class="TTabAction">Create</method>s an instance of <method namespace="ExtActns" class="TTabAction">TTabAction</method>.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call the <method namespace="ExtActns" class="TTabAction">TTabAction</method> constructor. Actions are added at design time to an action list or action manager.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">AOwner specifies the Owner for the action. This is the component that is responsible for freeing the <method namespace="ExtActns" class="TTabAction">TTabAction</method> instance.</para>
</comments>
</member>
<member name="M:ExtActns.ExtActns.UpdateTarget">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Enables or disables the action, depending on the target tab control.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call the <method namespace="ExtActns" class="TTabAction">UpdateTarget</method> method. This method is called automatically when the application is idle so that actions can update themselves according to the current conditions.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Target is the potential target object identified by the application.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">In <method namespace="ExtActns" class="TTabAction">TTabAction</method>, <method namespace="ExtActns" class="TTabAction">UpdateTarget</method> ignores the Target parameter and checks, instead, whether the TabControl property is set. If TabControl identifies an enabled page control or tab control that has more than one page, <method namespace="ExtActns" class="TTabAction">UpdateTarget</method> sets the Enabled property to true. If not, it sets Enabled to false.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">After setting the Enabled property, <method namespace="ExtActns" class="TTabAction">UpdateTarget</method> generates an OnValidateTab event, where application-specific code can further determine whether the action should be enabled.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Indicates whether the tab action should consider hidden tabbed pages when moving to the next page.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Set <property namespace="ExtActns" class="TTabAction">SkipHiddenTabs</property> to true if you do not want the action to move to a tab page if its TabVisible property is false. Set <property namespace="ExtActns" class="TTabAction">SkipHiddenTabs</property> to false if the tab action can move to and make visible a hidden page.</para>
<property namespace="ExtActns" class="TTabAction">SkipHiddenTabs</property> only has an effect when the TabControl property identifies a TPageControl object. (TTabControl does not support hidden pages).</para>
</note>
</comments>
</member>
<member name="P:ExtActns.ExtActns.TabControl">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Specifies the target of the action.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Set <property namespace="ExtActns" class="TTabAction">TabControl</property> to the control on which the action operates when its ExecuteTarget method is called. Typically, this is a page control or tab control object that implements the pages of a tabbed dialog.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">An application must explicitly assign a value to the <property namespace="ExtActns" class="TTabAction">TabControl</property> property before the <property namespace="ExtActns" class="TTabAction">TTabAction</property> descendant is enabled. The action does not infer the target page control when it fires.</para>
</comments>
</member>
<member name="P:ExtActns.ExtActns.Wrap">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Indicates whether the tab action should "wrap" when navigating to the next tab page.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">When <property namespace="ExtActns" class="TTabAction">Wrap</property> is true, the tab action can move previous to the first tabbed page or after the last tabbed page in the associated control. When <property namespace="ExtActns" class="TTabAction">Wrap</property> is false, an attempt to move beyond the first or last page does not result in any page change, although it still results in a BeforeTabChange and an AfterTabChange event or in an OnFinish event.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Occurs immediately before the action changes the page of the associated tab control.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Write a <event namespace="ExtActns" class="TTabAction">BeforeTabChange</event> event handler to perform any additional tasks before the tab action changes the current page of the associated tab control. Typically, this event is used to save or respond to the changes the user made on the current page before it changes.</para>
<event namespace="ExtActns" class="TTabAction">BeforeTabChange</event> only occurs if the action tries to change the page of the tab control (even if it is not successful). If the action attempts some other task (for example, when TNextPage is on the last page of the tab control), <event namespace="ExtActns" class="TTabAction">BeforeTabChange</event> does not occur. </para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Occurs immediately after the action changes the page of the associated tab control.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Write an <event namespace="ExtActns" class="TTabAction">AfterTabChange</event> event handler to perform any additional tasks after the tab action changes the current page of the associated tab control. Typically, this event is used to initialize the current page of the tab control.</para>
<event namespace="ExtActns" class="TTabAction">AfterTabChange</event> only occurs if the action tries to change the page of the tab control (even if it is not successful). If the action attempts some other task (for example, when TNextPage is on the last page of the tab control), <event namespace="ExtActns" class="TTabAction">AfterTabChange</event> does not occur. </para>
</note>
</comments>
</member>
<member name="E:ExtActns.ExtActns.OnValidateTab">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Occurs when the application is idle or when the action list updates.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use the <event namespace="ExtActns" class="TTabAction">OnValidateTab</event> event rather than the OnUpdate event to update the properties of a tab action when the application is idle. Unlike the OnUpdate event, which prevents the default behavior of the UpdateTarget method, <event namespace="ExtActns" class="TTabAction">OnValidateTab</event> occurs after UpdateTarget has set the Enabled property to reflect whether the target tab control is enabled.</para>
<event namespace="ExtActns" class="TTabAction">OnValidateTab</event> can be used to update any of the properties of the tab action, but it is intended primarily for enabling or disabling the action, depending on the contents of the current page of the target tab control.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Sender is the tab action component to update in this event.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">TabControl is the target tab control.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Enabled reflects the Enabled property of this action. Set Enabled in the event handler to enable or disable the action depending on current conditions.</para>
<class namespace="ExtActns">TPreviousTab</class> moves a page control to its previous page.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Add <class namespace="ExtActns">TPreviousTab</class> to an action list to allow users to move to the prior page of a page control using menu items or toolbar buttons. Controls such as menu items and tool buttons linked to this action cause the application change the current page of a page control to the previous one. Typically, these client controls are the "Prior" button or menu item in a tabbed dialog.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Before you can use <class namespace="ExtActns">TPreviousTab</class>, you must assign a target tab control as the value of the TabControl property. Once the target tab control is assigned, <class namespace="ExtActns">TPreviousTab</class> automatically disables itself if the target control is not enabled or if it is on the first page and wrapping is not permitted.</para>
</comments>
</member>
<member name="M:ExtActns.ExtActns.ExecuteTarget">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Changes the selected page in the target control to the previous one.</para>
<method namespace="ExtActns" class="TPreviousTab">ExecuteTarget</method> causes the action to perform its default response based on the state of the target tab control.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Target is the currently active object when the action fires. <method namespace="ExtActns" class="TPreviousTab">TPreviousTab</method> ignores this parameter and uses the TabControl property to identify the target control.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">1. Generates a BeforeTabChange event.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">2. Moves the control identified by TabControl to the previous page. If TabControl is on the first page and the Wrap property is true, this moves to the last page. If Wrap is false, <method namespace="ExtActns" class="TPreviousTab">ExecuteTarget</method> does not change the page when the tab control is on the first page. Note that the SkipHiddenTabs property controls whether hidden pages are considered when locating the previous page.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">3. Generates an AfterTabChange event.</para>
</comments>
</member>
<member name="M:ExtActns.ExtActns.UpdateTarget">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Enables or disables the action, depending on the status of the target control.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call the <method namespace="ExtActns" class="TPreviousTab">UpdateTarget</method> method. This method is called automatically when the application is idle so that actions can update themselves according to current conditions.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Target is the currently active object.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">In <method namespace="ExtActns" class="TPreviousTab">TPreviousTab</method>, <method namespace="ExtActns" class="TPreviousTab">UpdateTarget</method> ignores the Target parameter and checks whether the target control specified by the TabControl property is enabled. If so, it sets Enabled to true if the first page is not currently selected or if Wrap is true. It sets Enabled to false if TabControl is not enabled or if the first page is selected and Wrap is false.</para>
<class namespace="ExtActns">TNextTab</class> moves a tabbed control to its next page.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Add <class namespace="ExtActns">TNextTab</class> to an action list to provide the response to the "Next" and "Finish" buttons or menu items in a tabbed dialog. Controls such as menu items and tool buttons linked to this action cause a different response, depending on the value of the Wrap property and on whether the target control is on the last page:</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">If the target page control is not on the last page, or if Wrap is true, client controls cause this action to change the current page to the next page. (When Wrap is true, the next page after the last tab is the first tabbed page).</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">If Wrap is false and the target page control is on the last page, this action changes the caption of client controls (for example, from "Next" to "Finish") and, when fired, responds by generating an OnFinish event.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Before you can use <class namespace="ExtActns">TNextTab</class>, you must assign a target page control or tab control as the value of the TabControl property. Once the target control is assigned, <class namespace="ExtActns">TNextTab</class> automatically disables itself if the target control is not enabled.</para>
</comments>
</member>
<member name="M:ExtActns.ExtActns.ExecuteTarget">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Changes the selected tab in the target tab control to the next one, or generates an OnFinish event.</para>
<method namespace="ExtActns" class="TNextTab">ExecuteTarget</method> causes the action to perform its default response based on the state of the target tab control.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Target is the currently active object when the action fires. <method namespace="ExtActns" class="TNextTab">TNextTab</method> ignores this parameter and uses the TabControl property to identify the target control.</para>
<method namespace="ExtActns" class="TNextTab">ExecuteTarget</method> performs differently, depending on whether the target control is on the last page and on the value of the Wrap property:</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">If Wrap is true or the target control is not on the last page, <method namespace="ExtActns" class="TNextTab">ExecuteTarget</method> generates a BeforeTabChange event, changes the target control to the next page, and generates an AfterTabChange event. If Wrap is true and the target control is on the last page, this causes the target control to move to the first page. Note that the SkipHiddenTabs property determines whether the next page can include a hidden page.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">If Wrap is false and the target control is on the last page, <method namespace="ExtActns" class="TNextTab">ExecuteTarget</method> generates an OnFinish event.</para>
</comments>
</member>
<member name="M:ExtActns.ExtActns.UpdateTarget">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Updates the action to reflect current conditions.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call the <method namespace="ExtActns" class="TNextTab">UpdateTarget</method> method. This method is called automatically when the application is idle so that actions can update themselves according to current conditions.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">In <method namespace="ExtActns" class="TNextTab">TNextTab</method>, <method namespace="ExtActns" class="TNextTab">UpdateTarget</method> first checks whether the TabControl property specifies an enabled control that can act as a target. If not, <method namespace="ExtActns" class="TNextTab">UpdateTarget</method> sets the Enabled property to false.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">If the target control is enabled, <method namespace="ExtActns" class="TNextTab">UpdateTarget</method> sets the Enabled property to true and checks whether the target control is on its last page. If so, (and if Wrap is false) it changes the Caption property to the value of LastTabCaption. If not, it restores the Caption property to its original value.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Specifies the caption when the target page control is on its last page and Wrap is false.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Set <property namespace="ExtActns" class="TNextTab">LastTabCaption</property> to the caption of target controls when the control specified by the TabControl property is on its last page and the action can't tab beyond the last page. When the target page control is not on the last page, the caption for client controls is given by the Caption property. When the target page control is on the last page (and Wrap is false), <property namespace="ExtActns" class="TNextTab">TNextTab</property> caches the original value of Caption and changes the Caption property to <property namespace="ExtActns" class="TNextTab">LastTabCaption</property>. If the target page control returns to a previous page, <property namespace="ExtActns" class="TNextTab">TNextTab</property> then restores the original value of the Caption property.</para>
<property namespace="ExtActns" class="TNextTab">LastTabCaption</property> is designed for client controls such as the button in a tabbed dialog that changes from a "Next" button to a "Finish" button when the tabbed dialog reaches the last page.</para>
</comments>
</member>
<member name="E:ExtActns.ExtActns.OnFinish">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Occurs when the action fires and the target page control is on its last page.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Write an <event namespace="ExtActns" class="TNextTab">OnFinish</event> event handler to respond when the user indicates that they are finished with the tabbed dialog by clicking a client control when the tabbed dialog is on its last page. <event namespace="ExtActns" class="TNextTab">OnFinish</event> only occurs when the target control is on its last page and the Wrap property is false. When the target page control is on any other page, or when Wrap is true, <event namespace="ExtActns" class="TNextTab">TNextTab</event> generates an BeforeTabChange event, changes the current page of the target control, and generates an AfterTabChange event.</para>
<para>Use the <event namespace="ExtActns" class="TNextTab">OnFinish</event> event rather than the action's OnExecute event. If you supply an event handler to the OnExecute event, it blocks the default response by this action, and the action won't change the current page when the target tabbed dialog is not on its last page.</para>
<class namespace="ExtActns">TOpenPicture</class> is the standard action for displaying the open picture dialog.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Add <class namespace="ExtActns">TOpenPicture</class> to an action list to add a graphics file selection dialog to your application. Controls such as menu items and tool buttons linked to this action cause the application to display the open picture dialog when invoked. Use the OnAccept event to respond after the user selects a file name in the dialog or the OnCancel event to respond when the user cancels from the dialog. In the event handler, you can read the file name from the dialog specified by the Dialog property.</para>
</comments>
</member>
<member name="P:ExtActns.ExtActns.Dialog">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Provides access the open picture dialog that the action executes.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <property namespace="ExtActns" class="TOpenPicture">Dialog</property> to configure the graphics file selection dialog before the action fires or to read the selected file name after the action executes the dialog. For example, you can set the dialog's default extension or initially selected file at design time using the Object Inspector or read the dialog's FileName property from an OnAccept event handler to use the file that the user selected.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">When using an open picture action, you do not place a <property namespace="ExtActns" class="TOpenPicture">TOpenPicture</property>
<property namespace="ExtActns" class="TOpenPicture">Dialog</property> component on the form or data module at design time. Instead, you add the <property namespace="ExtActns" class="TOpenPicture">TOpenPicture</property> object to your action list and then use the <property namespace="ExtActns" class="TOpenPicture">Dialog</property> property. The dialog component is created by the <property namespace="ExtActns" class="TOpenPicture">TOpenPicture</property> constructor.</para>
<class namespace="ExtActns">TSavePicture</class> is the standard action for displaying the save picture dialog.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Add <class namespace="ExtActns">TSavePicture</class> to an action list to add a graphics "save as" dialog to your application. Controls such as menu items and tool buttons linked to this action cause the application to display the save picture dialog when invoked. Use the OnAccept event to respond after the user selects a file name in the dialog or the OnCancel event to respond when the user cancels from the dialog. In the event handler, you can read the file name from the dialog specified by the Dialog property.</para>
</comments>
</member>
<member name="P:ExtActns.ExtActns.Dialog">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Provides access the save picture dialog that the action executes.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <property namespace="ExtActns" class="TSavePicture">Dialog</property> to configure the graphics file "save as" dialog before the action fires or to read the specified file name after the action executes the dialog. For example, you can set the dialog's default extension or initial file name at design time using the Object Inspector or read the dialog's FileName property from an OnAccept event handler to use the file name that the user selects.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">When using a save picture action, you do not place a <property namespace="ExtActns" class="TSavePicture">TSavePicture</property>
<property namespace="ExtActns" class="TSavePicture">Dialog</property> component on the form or data module at design time. Instead, you add the <property namespace="ExtActns" class="TSavePicture">TSavePicture</property> object to your action list and then use the <property namespace="ExtActns" class="TSavePicture">Dialog</property> property. The dialog component is created by the <property namespace="ExtActns" class="TSavePicture">TSavePicture</property> constructor.</para>
<class namespace="ExtActns">TURLAction</class> is the base class for actions that perform some function based on an URL.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <class namespace="ExtActns">TURLAction</class> as a base class when creating an action component that uses a Uniform Resource Locator (URL). <class namespace="ExtActns">TURLAction</class> introduces the URL property to get or set the URL that it works with, but does not actually do anything with that URL. Rather, <class namespace="ExtActns">TURLAction</class> descendants, such as TBrowseURL or TDownLoadURL, override the ExecuteTarget method to perform some operation that uses the value of the URL property.</para>
<class namespace="ExtActns">TURLAction</class> automatically disables itself if the URL property has not been assigned.</para>
</comments>
</member>
<member name="M:ExtActns.ExtActns.HandlesTarget">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Indicates whether the action can execute.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call the <method namespace="ExtActns" class="TURLAction">HandlesTarget</method> method. This method is called automatically when the user invokes an object (such as a tool button or menu item) that is linked to this action. The <method namespace="ExtActns" class="TURLAction">HandlesTarget</method> method provides the action object with an opportunity to indicate whether it is appropriate to execute at this time with the object specified by the Target parameter as a "target".</para>
<method namespace="ExtActns" class="TURLAction">HandlesTarget</method> always returns true, because <method namespace="ExtActns" class="TURLAction">TURLAction</method> does not use the target object.</para>
</comments>
</member>
<member name="M:ExtActns.ExtActns.UpdateTarget">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Enables or disables the action, depending on whether the URL property is set.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call the <method namespace="ExtActns" class="TURLAction">UpdateTarget</method> method. This method is called automatically the application is idle so that actions can update themselves according to current conditions.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">In <method namespace="ExtActns" class="TURLAction">TURLAction</method>, <method namespace="ExtActns" class="TURLAction">UpdateTarget</method> checks whether the URL property has been set. If so, <method namespace="ExtActns" class="TURLAction">UpdateTarget</method> sets Enabled to true. If not, <method namespace="ExtActns" class="TURLAction">UpdateTarget</method> sets Enabled to false.</para>
</comments>
</member>
<member name="P:ExtActns.ExtActns.URL">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Specifies the Uniform Resource Locator (<property namespace="ExtActns" class="TURLAction">URL</property>) on which this action performs its function.</para>
<property namespace="ExtActns" class="TURLAction">URL</property> is the Uniform Resource Locator (<property namespace="ExtActns" class="TURLAction">URL</property>) with which this action works. Each T<property namespace="ExtActns" class="TURLAction">URL</property>Action descendant performs a different function that uses this <property namespace="ExtActns" class="TURLAction">URL</property>.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">This value is not assigned automatically: it is the responsibility of the application to supply a value for <property namespace="ExtActns" class="TURLAction">URL</property>. If no value is supplied, T<property namespace="ExtActns" class="TURLAction">URL</property>Action automatically disables itself.</para>
<class namespace="ExtActns">TBrowseURL</class> is the standard action for launching the default browser to display a specified URL.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Add <class namespace="ExtActns">TBrowseURL</class> to an action manager or action list to let your application launch a browser to display a specific Web page in response to user actions. Controls linked to this action cause the application to launch the default browser, as specified in the system registry, and display the Web page specified by the URL property. You should assign a value to the URL property before the user invokes this action.</para>
</comments>
</member>
<member name="M:ExtActns.ExtActns.ExecuteTarget">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Launches the default Web browser to display the Web page specified by URL.</para>
<method namespace="ExtActns" class="TBrowseURL">ExecuteTarget</method> is called automatically when the action fires in response to a user action (for example, when the user selects a menu item or presses a tool button that is linked to this action).</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Target is the currently active object when the action fires.</para>
<method namespace="ExtActns" class="TBrowseURL">ExecuteTarget</method> ignores the Target parameter and launches the default Web browser, passing in the URL specified by the URL property so that the browser displays the associated Web page.</para>
</comments>
</member>
<member name="E:ExtActns.ExtActns.BeforeBrowse">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Occurs immediately before the default browser launches and loads the specified URL.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Write a <event namespace="ExtActns" class="TBrowseURL">BeforeBrowse</event> event handler to take application-specific actions immediately before <event namespace="ExtActns" class="TBrowseURL">TBrowseURL</event> launches the default browser and loads a specified URL.</para>
</comments>
</member>
<member name="E:ExtActns.ExtActns.AfterBrowse">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Occurs after the default browser launches and loads the specified URL.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Write an <event namespace="ExtActns" class="TBrowseURL">AfterBrowse</event> event handler to take application-specific actions immediately after <event namespace="ExtActns" class="TBrowseURL">TBrowseURL</event> launches the default browser and loads a specified URL.</para>
<class namespace="ExtActns">TDownLoadURL</class> is the standard action for saving the contents of a specified URL to a file.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Add <class namespace="ExtActns">TDownLoadURL</class> to an action manager or action list to let your application save the contents of a specified URL to a file. Controls linked to this action cause the application to lookup the resource specified by the URL property and save it to the file specified by the Filename property. While <class namespace="ExtActns">TDownLoadURL</class> is writing to the specified file, it periodically generates an OnDownloadProgress event, so that you can provide users with feedback about the process.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">You should assign a value to the URL property and to the FileName property before the user invokes this action.</para>
</comments>
</member>
<member name="M:ExtActns.ExtActns.ExecuteTarget">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Creates the file specified by the Filename property and downloads the contents of URL to it.</para>
<method namespace="ExtActns" class="TDownLoadURL">ExecuteTarget</method> is called automatically when the action fires in response to a user action (for example, when the user selects a menu item or presses a tool button that is linked to this action).</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Target is the currently active object when the action fires.</para>
<method namespace="ExtActns" class="TDownLoadURL">ExecuteTarget</method> ignores the Target parameter and looks up (on the internet) the URL specified by the URL property, creates the file specified by the Filename property, and writes the bits found at the specified URL to the file.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Periodically throughout this download process, <method namespace="ExtActns" class="TDownLoadURL">TDownLoadURL</method> generates an OnDownloadProgress event.</para>
</comments>
</member>
<member name="P:ExtActns.ExtActns.Filename">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Specifies the file to which this action copies the resource identified by the URL property.</para>
<property namespace="ExtActns" class="TDownLoadURL">Filename</property> is the name of the file that <property namespace="ExtActns" class="TDownLoadURL">TDownLoadURL</property> creates to hold the contents of the URL specified by the URL property. When the user triggers this action, <property namespace="ExtActns" class="TDownLoadURL">TDownLoadURL</property> looks up URL on the internet, creates the file specified by <property namespace="ExtActns" class="TDownLoadURL">Filename</property>, and writes the bits it finds at URL to this file.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">This value is not assigned automatically: it is the responsibility of the application to supply a value for <property namespace="ExtActns" class="TDownLoadURL">Filename</property>.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Occurs before <event namespace="ExtActns" class="TDownLoadURL">TDownLoadURL</event> downloads the specified resource and writes it to a file.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Write a <event namespace="ExtActns" class="TDownLoadURL">BeforeDownload</event> event handler to perform a specific action before downloading the specified resource.</para>
</comments>
</member>
<member name="E:ExtActns.ExtActns.AfterDownload">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Occurs after <event namespace="ExtActns" class="TDownLoadURL">TDownLoadURL</event> downloads the specified resource and writes it to a file.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Write an <event namespace="ExtActns" class="TDownLoadURL">AfterDownload</event> event handler to perform a specific action after downloading the specified resource.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Occurs periodically while <event namespace="ExtActns" class="TDownLoadURL">TDownLoadURL</event> is downloading the specified resource and writing it to a file.</para>
<event namespace="ExtActns" class="TDownLoadURL">OnDownloadProgress</event> occurs periodically while the contents of the specified URL are downloaded to a file. </para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Sender is the action that is copying the contents of an URL to a file.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Progress indicates the current progress of the download operation relative to the expected maximum indicated in the ProgressMax parameter.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">ProgressMax indicates the expected maximum value of the Progress parameter. This value can change during the download operation as more information becomes available. A value of zero means that the maximum value is unknown.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">StatusCode indicates the current stage of the download process or other information about the download process.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">StatusText is a string that corresponds to StatusCode. It can be used for displaying the status of the download to users.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Cancel allows the event handler to cancel the download operation. On entry to the event handler, Cancel is false. If the event handler changes Cancel to true, the download operation is aborted.</para>
<class namespace="ExtActns">TSendMail</class> is the standard action for sending an email message.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Add <class namespace="ExtActns">TSendMail</class> to an action list to let your application send email messages in response to user actions. Controls linked to this action cause the application to send a MAPI mail message containing the message specified in the Text property.</para>
</comments>
</member>
<member name="M:ExtActns.ExtActns.HandlesTarget">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Indicates whether the action can execute.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call the <method namespace="ExtActns" class="TSendMail">HandlesTarget</method> method. This method is called automatically when the user invokes an object (such as a tool button or menu item) that is linked to this action. The <method namespace="ExtActns" class="TSendMail">HandlesTarget</method> method provides the action object with an opportunity to indicate whether it is appropriate to execute at this time with the object specified by the Target parameter as a "target".</para>
<method namespace="ExtActns" class="TSendMail">HandlesTarget</method> ignores the Target parameter and always returns true, because the ability to send mail is not dependant on the state of the application.</para>
</comments>
</member>
<member name="M:ExtActns.ExtActns.ExecuteTarget">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Displays a dialog where the user can compose an email message and then sends the message.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call the <method namespace="ExtActns" class="TSendMail">ExecuteTarget</method> method. This method is called automatically when the action fires in response to a user action (for example, when the user selects a menu item or presses a tool button that is linked to this action).</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Target is the currently active object when the action fires.</para>
<method namespace="ExtActns" class="TSendMail">ExecuteTarget</method> ignores the Target parameter, and displays a dialog where the user can compose an email message. The body of the message is initialized to the value of the Text property. When the user exits the dialog, the message is sent.</para>
<method namespace="ExtActns" class="TSendMail">ExecuteTarget</method> always spawns a temporary MAPI session for every mail message, which lasts only for the duration of the message. If necessary, the user is prompted with a login dialog.</para>
</comments>
</member>
<member name="M:ExtActns.ExtActns.UpdateTarget">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Enables the action.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call the <method namespace="ExtActns" class="TSendMail">UpdateTarget</method> method. This method is called automatically the application is idle so that actions can update themselves according to current conditions.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">In <method namespace="ExtActns" class="TSendMail">TSendMail</method>, <method namespace="ExtActns" class="TSendMail">UpdateTarget</method> ignores the Target parameter and always sets the Enabled property to true.</para>
</comments>
</member>
<member name="M:ExtActns.ExtActns.Destroy">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Frees the memory associated with the <method namespace="ExtActns" class="TSendMail">TSendMail</method> object.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not explicitly destroy actions. Action objects are created and destroyed by the action manager or action list that uses them.</para>
</comments>
</member>
<member name="P:ExtActns.ExtActns.Text">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Specifies the content of the mail message.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Set <property namespace="ExtActns" class="TSendMail">Text</property> to the content of the mail message. Because <property namespace="ExtActns" class="TSendMail">Text</property> is a TStrings object, you can use the string list editor at design time to compose the message. Use the TStrings object's LoadFromFile method to load the value of <property namespace="ExtActns" class="TSendMail">Text</property> from a file.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">When the action executes, <property namespace="ExtActns" class="TSendMail">TSendMail</property> displays a dialog for the user to compose the mail message. In that dialog, the body of the message is initialized to <property namespace="ExtActns" class="TSendMail">Text</property>.</para>
<class namespace="ExtActns">TListControlAction</class> is the base class for action objects that operate on the selection of a list control (list box or list view).</para>
<class namespace="ExtActns">TListControlAction</class> implements the common behavior for actions that work with list controls (list boxes and list views). Each descendant class performs a specific operation on the target list control. Do not use <class namespace="ExtActns">TListControlAction</class> directly in an application. Instead, use a <class namespace="ExtActns">TListControlAction</class> descendant such as TListControlSelectAll, TListControlClearSelection, TListControlDeleteSelection, TListControlCopySelection, or TListControlMoveSelection.</para>
<class namespace="ExtActns">TListControlAction</class> makes the target list control available to descendant classes as the value of the ListControl property. <class namespace="ExtActns">TListControlAction</class> descendants then override the ExecuteTarget method to perform their specific function on the target list control.</para>
</comments>
</member>
<member name="M:ExtActns.ExtActns.HandlesTarget">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Indicates whether the action can execute its function.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call the <method namespace="ExtActns" class="TListControlAction">HandlesTarget</method> method. This method is called automatically when the user invokes an object (such as a tool button or menu item) that is linked to this action. The <method namespace="ExtActns" class="TListControlAction">HandlesTarget</method> method provides the action object with an opportunity to indicate whether it is appropriate to execute at this time with the object specified by the Target parameter as a "target".</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Target is the currently active object.</para>
<method namespace="ExtActns" class="TListControlAction">HandlesTarget</method> checks that the target is a TCustomListControl descendant (or that the ListControl property is set if Target is nil (Delphi) or NULL (C++)). <method namespace="ExtActns" class="TListControlAction">HandlesTarget</method> returns true if there is a list control to act as target, false otherwise.</para>
<method namespace="ExtActns" class="TListControlAction">Create</method>s an instance of <method namespace="ExtActns" class="TListControlAction">TListControlAction</method>.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Most applications do not need to call the <method namespace="ExtActns" class="TListControlAction">TListControlAction</method> constructor because actions are added at design time to an action list or action manager. </para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">AOwner specifies the Owner for the action. This is the component that is responsible for freeing the <method namespace="ExtActns" class="TListControlAction">TListControlAction</method> instance.</para>
</comments>
</member>
<member name="P:ExtActns.ExtActns.ListControl">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Provides access to the target of the action.</para>
<property namespace="ExtActns" class="TListControlAction">ListControl</property> is the list control on which the action performs its function. It is a TCustom<property namespace="ExtActns" class="TListControlAction">ListControl</property> descendant, such a TListView or TListBox.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Set <property namespace="ExtActns" class="TListControlAction">ListControl</property> to associate the action with a particular control. If <property namespace="ExtActns" class="TListControlAction">ListControl</property> is not explicitly set, it is assumed to be the active listbox or list view when the action fires.</para>
<class namespace="StdActns">TListControlSelectAll</class> selects all the items in a list control (list view or listbox).</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Add <class namespace="StdActns">TListControlSelectAll</class> to an action list to allow users to select all the items of a list control by using menu items or toolbar buttons. Controls such as menu items and tool buttons linked to this action cause the application to select all items in the target control (a listbox or list view).</para>
<class namespace="StdActns">TListControlSelectAll</class> is designed to work with a list control (TCustomListControl descendant) as a target. <class namespace="StdActns">TListControlSelectAll</class> automatically disables itself if the target control is not a list control, if that target control does not permit multiple selection, or if all of the items in the target control are already selected.</para>
</comments>
</member>
<member name="M:ExtActns.ExtActns.ExecuteTarget">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Selects all the items in the target list control.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call the <method namespace="StdActns" class="TListControlSelectAll">ExecuteTarget</method> method. This method is called automatically when the action fires in response to a user action (for example, when the user selects a menu item or presses a tool button that is linked to this action).</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Target is the currently active object when the action fires. It should always be a TCustomListControl descendant (because HandlesTarget returns false if it is not).</para>
<method namespace="StdActns" class="TListControlSelectAll">ExecuteTarget</method> sets the ListControl property to Target it is not already set. It then calls the list control's SelectAll method, selecting all of its items.</para>
</comments>
</member>
<member name="M:ExtActns.ExtActns.UpdateTarget">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Enables or disables the action, depending on the state of the target control.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call the <method namespace="StdActns" class="TListControlSelectAll">UpdateTarget</method> method. This method is called automatically when the application is idle so that actions can update themselves according to current conditions.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">In <method namespace="StdActns" class="TListControlSelectAll">TListControlSelectAll</method>, <method namespace="StdActns" class="TListControlSelectAll">UpdateTarget</method> checks whether the current target object (specified by the ListControl property if it is set, otherwise by the Target parameter) is a list control that includes allows multiple selections and that includes at least one unselected item. If so, <method namespace="StdActns" class="TListControlSelectAll">UpdateTarget</method> sets Enabled to true. If not, <method namespace="StdActns" class="TListControlSelectAll">UpdateTarget</method> sets Enabled to false.</para>
<class namespace="StdActns">TListControlClearSelection</class> deselects all selected items in a list control (list view or list box).</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Add <class namespace="StdActns">TListControlClearSelection</class> to an action list to allow users to deselect any selected items of a list control by using menu items or toolbar buttons. Controls such as menu items and tool buttons linked to this action cause the application to deselect all selected items in the target control.</para>
<class namespace="StdActns">TListControlClearSelection</class> is designed to work with a list control (TCustomListControl descendant) as a target. <class namespace="StdActns">TListControlClearSelection</class> automatically disables itself if the target control is not a list control or if that list box or list view has no selected items.</para>
</comments>
</member>
<member name="M:ExtActns.ExtActns.ExecuteTarget">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Deselects the currently selected items in the target list control.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call the <method namespace="StdActns" class="TListControlClearSelection">ExecuteTarget</method> method. This method is called automatically when the action fires in response to a user action (for example, when the user selects a menu item or presses a tool button that is linked to this action).</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Target is the currently active object when the action fires. It should always be a TCustomListControl descendant (because HandlesTarget returns false if it is not).</para>
<method namespace="StdActns" class="TListControlClearSelection">ExecuteTarget</method> sets the ListControl property to Target it is not already set. It then calls the list control's ClearSelection method, deselecting any selected items.</para>
</comments>
</member>
<member name="M:ExtActns.ExtActns.UpdateTarget">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Enables or disables the action, depending on the state of the target control.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call the <method namespace="StdActns" class="TListControlClearSelection">UpdateTarget</method> method. This method is called automatically when the application is idle so that actions can update themselves according to current conditions.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">In <method namespace="StdActns" class="TListControlClearSelection">TListControlClearSelection</method>, <method namespace="StdActns" class="TListControlClearSelection">UpdateTarget</method> checks whether the current target object (specified by the ListControl property if it is set, otherwise by the Target parameter) is a list control that includes at least one selected item. If so, <method namespace="StdActns" class="TListControlClearSelection">UpdateTarget</method> sets Enabled to true. If not, <method namespace="StdActns" class="TListControlClearSelection">UpdateTarget</method> sets Enabled to false.</para>
<class namespace="StdActns">TListControlDeleteSelection</class> deletes the selected items in a list control (list view or listbox).</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Add <class namespace="StdActns">TListControlDeleteSelection</class> to an action list to allow users to delete the selected items of a list control by using menu items or toolbar buttons. Controls such as menu items and tool buttons linked to this action cause the application to delete all selected items in the target control (a listbox or list view).</para>
<class namespace="StdActns">TListControlDeleteSelection</class> is designed to work with a list control (TCustomListControl descendant) as a target. <class namespace="StdActns">TListControlDeleteSelection</class> automatically disables itself if the target control is not a list control or if that list box or list view has no selected items.</para>
</comments>
</member>
<member name="M:ExtActns.ExtActns.ExecuteTarget">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Deletes the selected items in the target list control.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call the <method namespace="StdActns" class="TListControlDeleteSelection">ExecuteTarget</method> method. This method is called automatically when the action fires in response to a user action (for example, when the user selects a menu item or presses a tool button that is linked to this action).</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Target is the currently active object when the action fires. It should always be a TCustomListControl descendant (because HandlesTarget returns false if it is not).</para>
<method namespace="StdActns" class="TListControlDeleteSelection">ExecuteTarget</method> sets the ListControl property to Target it is not already set. It then calls the list control's DeleteSelected method, deleting any selected items.</para>
</comments>
</member>
<member name="M:ExtActns.ExtActns.UpdateTarget">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Enables or disables the action, depending on the state of the target control.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call the <method namespace="StdActns" class="TListControlDeleteSelection">UpdateTarget</method> method. This method is called automatically when the application is idle so that actions can update themselves according to current conditions.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">In <method namespace="StdActns" class="TListControlDeleteSelection">TListControlDeleteSelection</method>, <method namespace="StdActns" class="TListControlDeleteSelection">UpdateTarget</method> checks whether the current target object (specified by the ListControl property if it is set, otherwise by the Target parameter) is a list control that includes at least one selected item. If so, <method namespace="StdActns" class="TListControlDeleteSelection">UpdateTarget</method> sets Enabled to true. If not, <method namespace="StdActns" class="TListControlDeleteSelection">UpdateTarget</method> sets Enabled to false.</para>
<class namespace="StdActns">TListControlCopySelection</class> copies the selected items in a list control (list view or list box) to another (destination) list control.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Add <class namespace="StdActns">TListControlCopySelection</class> to an action list to allow users to copy the selected items of a list control to another list control by using menu items or toolbar buttons. Controls such as menu items and tool buttons linked to this action cause the application to copy all selected items in the target control to another (destination) list control.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Your application must explicitly set the Destination property to indicate the list to which items are copied.</para>
<class namespace="StdActns">TListControlCopySelection</class> is designed to work with a list control (TCustomListControl descendant) as a target. This target is the source list control, not the destination. <class namespace="StdActns">TListControlCopySelection</class> automatically disables itself if the target control is not a list control, if that list box or list view has no selected items, or if there is no destination list control assigned.</para>
</comments>
</member>
<member name="M:ExtActns.ExtActns.HandlesTarget">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Indicates whether the action can execute its function.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call the <method namespace="StdActns" class="TListControlCopySelection">HandlesTarget</method> method. This method is called automatically when the user invokes an object (such as a tool button or menu item) that is linked to this action. The <method namespace="StdActns" class="TListControlCopySelection">HandlesTarget</method> method provides the action object with an opportunity to indicate whether it is appropriate to execute at this time with the object specified by the Target parameter as a "target".</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Target is the currently active object.</para>
<method namespace="StdActns" class="TListControlCopySelection">HandlesTarget</method> checks that the target is a TCustomListControl descendant (or that the ListControl property is set if Target is nil (Delphi) or NULL (C++)). It also ensures that the Destination property has been asssigned. <method namespace="StdActns" class="TListControlCopySelection">HandlesTarget</method> returns true if there is a list control to act as target and a destination control, false otherwise.</para>
</comments>
</member>
<member name="M:ExtActns.ExtActns.ExecuteTarget">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Copies the selected items in the target list control to the list control specified by Destination.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call the <method namespace="StdActns" class="TListControlCopySelection">ExecuteTarget</method> method. This method is called automatically when the action fires in response to a user action (for example, when the user selects a menu item or presses a tool button that is linked to this action).</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Target is the currently active object when the action fires. It should always be a TCustomListControl descendant (because HandlesTarget returns false if it is not).</para>
<method namespace="StdActns" class="TListControlCopySelection">ExecuteTarget</method> sets the ListControl property to Target it is not already set. It then calls the list control's ClearSelection method, copying any selected items to the list box or list view specified by the Destination property.</para>
</comments>
</member>
<member name="M:ExtActns.ExtActns.UpdateTarget">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Enables or disables the action, depending on the state of the target control.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call the <method namespace="StdActns" class="TListControlCopySelection">UpdateTarget</method> method. This method is called automatically when the application is idle so that actions can update themselves according to current conditions.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">In <method namespace="StdActns" class="TListControlCopySelection">TListControlCopySelection</method>, <method namespace="StdActns" class="TListControlCopySelection">UpdateTarget</method> checks whether the current target object (specified by the ListControl property if it is set, otherwise by the Target parameter) is a list control that includes at least one selected item. If so, <method namespace="StdActns" class="TListControlCopySelection">UpdateTarget</method> sets Enabled to true. If not, <method namespace="StdActns" class="TListControlCopySelection">UpdateTarget</method> sets Enabled to false.</para>
</comments>
</member>
<member name="P:ExtActns.ExtActns.Destination">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Specifies the list control to which items are copied.</para>
<property namespace="StdActns" class="TListControlCopySelection">Destination</property> is the list control to which the action copies selected items from its target. It is a TCustomListControl descendant, such a TListView or TListBox.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">You must explicitly set <property namespace="StdActns" class="TListControlCopySelection">Destination</property> to indicate the list control that receives the new items. These items are copied from the list control specified by the ListControl property. <property namespace="StdActns" class="TListControlCopySelection">Destination</property> and ListControl do not need to be the same type of control, as long as they are both TCustomListControl descendants.</para>
<class namespace="StdActns">TListControlMoveSelection</class> moves the selected items in a list control (list view or list box) to another (destination) list control.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Add <class namespace="StdActns">TListControlMoveSelection</class> to an action list to allow users to move the selected items of a list control to another list control by using menu items or toolbar buttons. Controls such as menu items and tool buttons linked to this action cause the application to move all selected items in the target control to another (destination) list control.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Your application must explicitly set the Destination property to indicate the list to which items are copied.</para>
<class namespace="StdActns">TListControlMoveSelection</class> is designed to work with a list control (TCustomListControl descendant) as a target. This target is the source list control, not the destination. <class namespace="StdActns">TListControlMoveSelection</class> automatically disables itself if the target control is not a list control, if that list box or list view has no selected items, or if there is no destination list control assigned.</para>
</comments>
</member>
<member name="M:ExtActns.ExtActns.ExecuteTarget">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Moves the selected items in the target list control to the list control specified by Destination.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call the <method namespace="StdActns" class="TListControlMoveSelection">ExecuteTarget</method> method. This method is called automatically when the action fires in response to a user action (for example, when the user selects a menu item or presses a tool button that is linked to this action).</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Target is the currently active object when the action fires. It should always be a TCustomListControl descendant (because HandlesTarget returns false if it is not).</para>
<method namespace="StdActns" class="TListControlMoveSelection">ExecuteTarget</method> sets the ListControl property to Target it is not already set. It then calls the list control's MoveSelection method, copying any selected items to the list box or list view specified by the Destination property and removing them from the target (source list control).</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <class namespace="AppEvnts">TCustomApplicationEvents</class> as a base class for objects that intercept the events of the global Application object. Each event of the TApplicationEvents object is the same as the event with the same name on the Application object.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not create instances of <class namespace="AppEvnts">TCustomApplicationEvents</class>. Instead, use a descendant of <class namespace="AppEvnts">TCustomApplicationEvents</class> such a TApplicationEvents.</para>
<method namespace="AppEvnts" class="TCustomApplicationEvents">Create</method>s a new <method namespace="AppEvnts" class="TCustomApplicationEvents">TCustomApplicationEvents</method> object.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Call <method namespace="AppEvnts" class="TCustomApplicationEvents">Create</method> to instantiate <method namespace="AppEvnts" class="TCustomApplicationEvents">TCustomApplicationEvents</method> at runtime. Components added to forms at design time are created automatically.</para>
<method namespace="AppEvnts" class="TCustomApplicationEvents">Create</method> adds the component to the internal list of components that respond to the application's events. Once the component is created, it responds to any of the application events unless another <method namespace="AppEvnts" class="TCustomApplicationEvents">TCustomApplicationEvents</method> component prevents it by calling CancelDispatch.</para>
</comments>
</member>
<member name="M:AppEvnts.AppEvnts.Activate">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Ensures that this is the first component to receive any application events.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Call <method namespace="AppEvnts" class="TCustomApplicationEvents">Activate</method> to move the <method namespace="AppEvnts" class="TCustomApplicationEvents">TCustomApplicationEvents</method> descendant to the front of the internal list of components that respond to the application's events. There is no need to call <method namespace="AppEvnts" class="TCustomApplicationEvents">Activate</method> unless the project includes more than one <method namespace="AppEvnts" class="TCustomApplicationEvents">TCustomApplicationEvents</method> descendant.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Typically, each form that contains a <method namespace="AppEvnts" class="TCustomApplicationEvents">TCustomApplicationEvents</method> descendant calls that component's <method namespace="AppEvnts" class="TCustomApplicationEvents">Activate</method> method from its On<method namespace="AppEvnts" class="TCustomApplicationEvents">Activate</method> event handler. This has the effect of switching the first event handler to receive an event every time the user changes the active form.</para>
<method namespace="AppEvnts" class="TCustomApplicationEvents">Activate</method> does not prevent other <method namespace="AppEvnts" class="TCustomApplicationEvents">TCustomApplicationEvents</method> descendants from receiving events, it merely places them in the queue behind the active <method namespace="AppEvnts" class="TCustomApplicationEvents">TCustomApplicationEvents</method> descendant. To prevent other components from receiving the events, use the CancelDispatch method.</para>
<para>Do not call <method namespace="AppEvnts" class="TCustomApplicationEvents">Activate</method> from an event handler that is responding to an application-level event. Such a call will cause an exception to be raised.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Prevents other <method namespace="AppEvnts" class="TCustomApplicationEvents">TCustomApplicationEvents</method> objects from receiving the current event.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Call <method namespace="AppEvnts" class="TCustomApplicationEvents">CancelDispatch</method> from one of the <method namespace="AppEvnts" class="TCustomApplicationEvents">TCustomApplicationEvents</method> descendant's event handlers when it handles an event. <method namespace="AppEvnts" class="TCustomApplicationEvents">CancelDispatch</method> prevents other <method namespace="AppEvnts" class="TCustomApplicationEvents">TCustomApplicationEvents</method> descendant's from receiving the event after the current event handler exits.</para>
<method namespace="AppEvnts" class="TCustomApplicationEvents">CancelDispatch</method> has no effect unless it is called from one of the component's event handlers.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Occurs when an action's Execute method is called and its action list has not already handled it.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use the OnExecute event handler to respond when a user invokes actions whose action lists do not have OnExecute event handlers.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">If the action list that contains the action does not handle it in an OnExecute event handler, then the action is routed to the Application object's <event namespace="AppEvnts" class="TCustomApplicationEvents">OnActionExecute</event> event. The application events object hooks this event and responds with its own <event namespace="AppEvnts" class="TCustomApplicationEvents">OnActionExecute</event> event handler.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The Handled parameter of the event handler returns false by default. If the handler handles the event, it should change Handled to true, thereby preventing further attempts to handle the action. When the event handler exits with Handled set to false, the event first goes to any other application events objects, and then the action's OnExecute event occurs. If the action remains unhandled after that, the active control's ExecuteAction method is called to allow the action to execute with an identified target. Finally, the active form's ExecuteAction method is called if all other handlers do not handle the action.</para>
<para>Call the CancelDispatch method from an <event namespace="AppEvnts" class="TCustomApplicationEvents">OnActionExecute</event> event handler to prevent the application from forwarding the event to any other application events objects.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Occurs when an action's Update method is called and its action list has not already handled it.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use the <event namespace="AppEvnts" class="TCustomApplicationEvents">OnActionUpdate</event> event handler to update the properties of an action when the application is idle if the action's action list does not handle it in an OnUpdate event handler. <event namespace="AppEvnts" class="TCustomApplicationEvents">OnActionUpdate</event> occurs after the OnIdle event.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">If the action list that contains the action does not update it in an OnUpdate event handler, the action is routed to the Application object's <event namespace="AppEvnts" class="TCustomApplicationEvents">OnActionUpdate</event> event. The application events object hooks this event and responds with its own <event namespace="AppEvnts" class="TCustomApplicationEvents">OnActionUpdate</event> event handler.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The Handled parameter of the event handler returns false by default. If the handler updates the event, it should change Handled to true, thereby ending the processing of the action. When the event handler exits with Handled set to false, the event first goes to any other application events objects, and then the action's OnUpdate event occurs. If the action is not updated after that, the active control's UpdateAction method is called to allow the target to update the action. Finally, the active form's UpdateAction method is called if all other handlers do not handle the action.</para>
<para>Call the CancelDispatch method from an <event namespace="AppEvnts" class="TCustomApplicationEvents">OnActionUpdate</event> event handler to prevent the application from forwarding the event to any other application events objects.</para>
</note>
</comments>
</member>
<member name="E:AppEvnts.AppEvnts.OnActivate">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Occurs when an application becomes active.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Write an <event namespace="AppEvnts" class="TCustomApplicationEvents">OnActivate</event> event handler to perform special processing when the application becomes active.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">An application becomes active when it is initially run or when focus moves from another Windows application back to any window of the application.</para>
<para>Call the CancelDispatch method from an <event namespace="AppEvnts" class="TCustomApplicationEvents">OnActivate</event> event handler to prevent the application from forwarding the event to any other application events objects.</para>
</note>
</comments>
</member>
<member name="E:AppEvnts.AppEvnts.OnDeactivate">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Occurs when an application becomes inactive.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Write an <event namespace="AppEvnts" class="TCustomApplicationEvents">OnDeactivate</event> event handler to perform any special processing that should occur immediately before the application is deactivated. The <event namespace="AppEvnts" class="TCustomApplicationEvents">OnDeactivate</event> event occurs when the user switches from the application to another Windows application.</para>
<para>Call the CancelDispatch method from an <event namespace="AppEvnts" class="TCustomApplicationEvents">OnDeactivate</event> event handler to prevent the application from forwarding the event to any other application events objects.</para>
</note>
</comments>
</member>
<member name="E:AppEvnts.AppEvnts.OnException">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Occurs when an unhandled exception occurs in the application.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <event namespace="AppEvnts" class="TCustomApplicationEvents">OnException</event> to change the default behavior that occurs when an exception is not handled by application code. The <event namespace="AppEvnts" class="TCustomApplicationEvents">OnException</event> event handler is called automatically in the application's HandleException method. </para>
<event namespace="AppEvnts" class="TCustomApplicationEvents">OnException</event> only handles exceptions that occur during message processing. Exceptions that occur before or after the execution of the application's Run method do not generate <event namespace="AppEvnts" class="TCustomApplicationEvents">OnException</event> events.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">If an exception passes through the try blocks in the application code, the application automatically calls the HandleException method. Unless the exception object is EAbort, HandleException calls the <event namespace="AppEvnts" class="TCustomApplicationEvents">OnException</event> handler, if one exists. Otherwise, it calls ShowException to display a message box indicating an error occurred.</para>
<para>Call the CancelDispatch method from an <event namespace="AppEvnts" class="TCustomApplicationEvents">OnException</event> event handler to prevent the application from forwarding the event to any other application events objects.</para>
</note>
</comments>
</member>
<member name="E:AppEvnts.AppEvnts.OnIdle">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Occurs when an application becomes idle.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Write an <event namespace="AppEvnts" class="TCustomApplicationEvents">OnIdle</event> event handler to perform special processing when an application is idle. An application is idle when it is not processing code. For example, an application is idle when it is waiting for input from the user.</para>
<event namespace="AppEvnts" class="TCustomApplicationEvents">OnIdle</event> is called only once, as the application transitions into an idle state. It is not called continuously unless Done is set to false. Applications that set Done to false consume an inordinate amount of CPU time, which affects overall system performance.</para>
<para>Call the CancelDispatch method from an <event namespace="AppEvnts" class="TCustomApplicationEvents">OnIdle</event> event handler to prevent the application from forwarding the event to any other application events objects.</para>
</note>
</comments>
</member>
<member name="E:AppEvnts.AppEvnts.OnHelp">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Occurs when the application receives a request for help.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Write an <event namespace="AppEvnts" class="TCustomApplicationEvents">OnHelp</event> event handler to perform special processing when the user requests help. The HelpContext and the HelpJump methods automatically trigger the <event namespace="AppEvnts" class="TCustomApplicationEvents">OnHelp</event> event.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Set CallHelp to true to have the application call WinHelp after the event. Set CallHelp to false to prevent the application from calling WinHelp. All application help methods go through <event namespace="AppEvnts" class="TCustomApplicationEvents">OnHelp</event>. The application calls WinHelp only if <event namespace="AppEvnts" class="TCustomApplicationEvents">OnHelp</event>'s CallHelp parameter returns <condition language="Delphi">True,</condition>
<condition language="CBuilder">true</condition> or if no <event namespace="AppEvnts" class="TCustomApplicationEvents">OnHelp</event> event handler is assigned.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">To find the possible values of the Command and Data parameters, search for WinHelp in the Win32 Developer's Reference Help (Win32.HLP) file, which explains the WinHelp API (application programming interface). The possible values for the Data parameter depend upon the value of the Command parameter.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The return value is true if the event handler succeeds, false if it fails. </para>
<para>Call the CancelDispatch method from an <event namespace="AppEvnts" class="TCustomApplicationEvents">OnHelp</event> event handler to prevent the application from forwarding the event to any other application events objects.</para>
</note>
</comments>
</member>
<member name="E:AppEvnts.AppEvnts.OnHint">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Occurs when the mouse pointer moves over a control or menu item that can display a Help Hint.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Write an <event namespace="AppEvnts" class="TCustomApplicationEvents">OnHint</event> event handler to perform special processing when the mouse pauses over a control or menu item whose Hint property is not an empty string (<condition language="Delphi">'</condition>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">A common use of the <event namespace="AppEvnts" class="TCustomApplicationEvents">OnHint</event> event is to display the value of a control or menu item's Hint property as the text of a status bar (TStatusBar). The Hint property of a control can specify both a short Help Hint and a (usually) longer hint that appears elsewhere because of code in an <event namespace="AppEvnts" class="TCustomApplicationEvents">OnHint</event> event handler.</para>
<para>Call the CancelDispatch method from an <event namespace="AppEvnts" class="TCustomApplicationEvents">OnHint</event> event handler to prevent the application from forwarding the event to any other application events objects.</para>
<para>Component writers can respond to the automatically-fired THintAction action in a component's ExecuteAction method rather than relying on an <event namespace="AppEvnts" class="TCustomApplicationEvents">OnHint</event> event handler.</para>
</tip>
</comments>
</member>
<member name="E:AppEvnts.AppEvnts.OnMessage">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Occurs when the application receives a Windows message.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <event namespace="AppEvnts" class="TCustomApplicationEvents">OnMessage</event> to trap any or all Windows messages posted to all windows in the application. <event namespace="AppEvnts" class="TCustomApplicationEvents">OnMessage</event> occurs when an application receives a Windows message. <event namespace="AppEvnts" class="TCustomApplicationEvents">OnMessage</event> only receives messages that are posted to the message queue, not those sent directly with the Windows API SendMessage function.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">An <event namespace="AppEvnts" class="TCustomApplicationEvents">OnMessage</event> event handler allows an application to respond to messages other than those declared in the events for TApplication. If the application doesn't have a specific handler for an incoming message, the message is dispatched to the window for which it was intended, and Windows handles the message.</para>
<para>Caution:Thousands of messages per second flow though this event. Be careful when coding the handler, because it can affect the performance of the entire application.</para>
<para>Call the CancelDispatch method from an <event namespace="AppEvnts" class="TCustomApplicationEvents">OnMessage</event> event handler to prevent the application from forwarding the event to any other application events objects.</para>
</tip>
</comments>
</member>
<member name="E:AppEvnts.AppEvnts.OnMinimize">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Occurs when an application is minimized.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Write an <event namespace="AppEvnts" class="TCustomApplicationEvents">OnMinimize</event> event handler to perform special processing when the application is minimized. The application is minimized, either because the user minimizes the main window, or because of a call to the Minimize method. The application's Icon property determines the icon that represents the minimized application.</para>
<para>Call the CancelDispatch method from an <event namespace="AppEvnts" class="TCustomApplicationEvents">OnMinimize</event> event handler to prevent the application from forwarding the event to any other application events objects.</para>
</note>
</comments>
</member>
<member name="E:AppEvnts.AppEvnts.OnRestore">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Occurs when the previously minimized application is restored to its normal size.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Write an <event namespace="AppEvnts" class="TCustomApplicationEvents">OnRestore</event> event handler to perform special processing when the application is restored from the minimized state in which it appears as an icon. An application is restored either because the user restores the application, or because the application calls the Restore method.</para>
<para>Don't confuse restoring an application with restoring a form or window to its original size. To minimize, maximize, and restore a window or form, change the value of the WindowState property.</para>
<para>Call the CancelDispatch method from an <event namespace="AppEvnts" class="TCustomApplicationEvents">OnRestore</event> event handler to prevent the application from forwarding the event to any other application events objects.</para>
</note>
</comments>
</member>
<member name="E:AppEvnts.AppEvnts.OnShowHint">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Occurs when the application is about to display the hint window for a Help Hint.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Write an <event namespace="AppEvnts" class="TCustomApplicationEvents">OnShowHint</event> event handler to change the appearance and behavior of Help Hints.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The HintStr parameter sets the text of the Help Hint. To obtain the text of a hint for a particular control, call the GetLongHint or GetShortHint function, assigning the result to HintStr. To change the text, change the value of this string.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use the CanShow parameter to permit or prevent the Help Hint from displaying. If CanShow is true, the Help Hint displays. If it is false, the Help Hint does not appear.</para>
<para>Call the CancelDispatch method from an <event namespace="AppEvnts" class="TCustomApplicationEvents">OnShowHint</event> event handler to prevent the application from forwarding the event to any other application events objects.</para>
</note>
</comments>
</member>
<member name="E:AppEvnts.AppEvnts.OnShortCut">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Occurs when the user presses a key (before the OnKeyDown event).</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <event namespace="AppEvnts" class="TCustomApplicationEvents">OnShortCut</event> to dispatch shortcut keystrokes before the form or its controls handle them. When the user presses a key, the application can dispatch it as a shortcut key instead of allowing the standard keystroke processing (OnKeyDown, OnKeyPress, and OnKeyUp). Built-in shortcut processing is provided for menu shortcuts and actions associated with the form. <event namespace="AppEvnts" class="TCustomApplicationEvents">OnShortCut</event> lets the application implement additional shortcuts.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">If the <event namespace="AppEvnts" class="TCustomApplicationEvents">OnShortCut</event> event handler responds to the keystroke, set its Handled parameter to true. This prevents the keystroke from being passed on to menus or actions associated with the application. It also prevents the standard keystroke processing in the same way that a menu or action shortcut does.</para>
<para>Call the CancelDispatch method from an <event namespace="AppEvnts" class="TCustomApplicationEvents">OnShortCut</event> event handler to prevent the application from forwarding the event to any other application events objects.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Occurs when Windows notifies the application that a system-wide setting has changed.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <event namespace="AppEvnts" class="TCustomApplicationEvents">OnSettingChange</event> to respond when Windows informs the application that a system-wide setting or policy has changed.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <class namespace="AppEvnts">TApplicationEvents</class> to intercept the events of the global Application object. When you add a <class namespace="AppEvnts">TApplicationEvents</class> object to a form, the Application object forwards all events to the <class namespace="AppEvnts">TApplicationEvents</class> object. Thus, each event of the <class namespace="AppEvnts">TApplicationEvents</class> object is the same as the event with the same name on the Application object.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Each form in an application can have its own <class namespace="AppEvnts">TApplicationEvents</class> object. Each application event occurs for all the <class namespace="AppEvnts">TApplicationEvents</class> objects in the project. To change the order in which the different <class namespace="AppEvnts">TApplicationEvents</class> objects receive events, use the Activate method. To prevent other <class namespace="AppEvnts">TApplicationEvents</class> objects from receiving a specific event, use the CancelDispatch method.</para>
<class namespace="StdActns">THintAction</class> is the action that executes when the user pauses the mouse over a control or menu item that has a hint.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not use <class namespace="StdActns">THintAction</class> in an <condition os="Windows">action manager or </condition>action list the way you would use other predefined actions. <class namespace="StdActns">THintAction</class> is not intended to work with a client control. Rather, it is used by the application object.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">When the user pauses the mouse over a control or menu item that defines its Hint property, the application responds in one of two ways:</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">If the application has an OnHint event handler, it generates an OnHint event.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">If there is no OnHint event handler, the application executes a <class namespace="StdActns">THintAction</class> object.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">When <class namespace="StdActns">THintAction</class> executes, it calls the ExecuteAction method of potential target controls until a control is found to respond to the action. Some controls, such as TStatusBar, override the ExecuteAction method to respond to <class namespace="StdActns">THintAction</class>.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Component writers can override the ExecuteAction method of a new component to respond to <class namespace="StdActns">THintAction</class> by displaying hint messages. Such an ExecuteAction method might look like the following:</para>
<method namespace="StdActns" class="THintAction">Create</method>s an instance of <method namespace="StdActns" class="THintAction">THintAction</method>.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Typically, you do not need to create <method namespace="StdActns" class="THintAction">THintAction</method> instances. <method namespace="StdActns" class="THintAction">THintAction</method> is created by the application object when it detects the need to display a hint.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">You can, however, create a <method namespace="StdActns" class="THintAction">THintAction</method> object, set its Hint property, and then call its Execute method to cause other controls in the application (such as status bars) to display a message for some application-generated condition (such as a status message).</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">AOwner is the component, typically the application object, that is responsible for freeing the <method namespace="StdActns" class="THintAction">THintAction</method> object.</para>
<class namespace="StdActns">TEditAction</class> is the common base class for actions that work with edit controls. Each descendant class performs a specific type of edit on the target edit control. Do not use <class namespace="StdActns">TEditAction</class> directly in an application. Instead, use a <class namespace="StdActns">TEditAction</class> descendant that performs a specific function (for example, Cut, Copy, Paste, Delete, Select All, or Undo). The various <class namespace="StdActns">TEditAction</class> descendants are listed in the See also list.</para>
<method namespace="StdActns" class="TEditAction">TEditAction</method> uses the protected <method namespace="StdActns" class="TEditAction">GetControl</method> method internally to obtain the target of the action. </condition>
<method namespace="StdActns" class="TEditAction">GetControl</method> returns the target object as an edit control.</condition>
</para>
</comments>
</member>
<member name="M:StdActns.StdActns.HandlesTarget">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Indicates whether the action can execute its function.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call the <method namespace="StdActns" class="TEditAction">HandlesTarget</method> method. This method is called automatically when the user invokes an object (such as a tool button or menu item) that is linked to this action. The <method namespace="StdActns" class="TEditAction">HandlesTarget</method> method provides the action object with an opportunity to indicate whether it is appropriate to execute at this time with the object specified by the Target parameter as a "target".</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Target is the currently active object.</para>
<method namespace="StdActns" class="TEditAction">HandlesTarget</method> checks that the target of is a TCustomEdit descendant (or that the <condition os="Linux">Edit</condition>Control property is set if Target is nil (Delphi) or NULL (C++)). <method namespace="StdActns" class="TEditAction">HandlesTarget</method> returns true if there is an edit control to act as target, false otherwise.</para>
<condition os="Windows">Do not call the <method namespace="StdActns" class="TEditAction">Notification</method> method in an application. <method namespace="StdActns" class="TEditAction">Notification</method> is called automatically when the component specified by AComponent is about to be inserted or removed, as specified by Operation. </condition>
<method namespace="StdActns" class="TEditAction">TEditAction</method> responds to notifications that the target edit control (as specified by the Control property) is about to be freed by setting Control to nil (Delphi) or NULL (C++).</condition>
</para>
</comments>
</member>
<member name="M:StdActns.StdActns.UpdateTarget">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Enables or disables the action, depending on the currently active control in the form.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call the <method namespace="StdActns" class="TEditAction">UpdateTarget</method> method. This method is called automatically when the potential target changes so that actions can update themselves accordingly.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">In <method namespace="StdActns" class="TEditAction">TEditAction</method>, <method namespace="StdActns" class="TEditAction">UpdateTarget</method> checks whether the current target object (specified by the Target parameter) is an edit control and, if the action's function requires it, that some of its text is selected. If so, <method namespace="StdActns" class="TEditAction">UpdateTarget</method> sets Enabled to true. If not, <method namespace="StdActns" class="TEditAction">UpdateTarget</method> sets Enabled to false.</para>
<condition os="Windows">Edit<property namespace="StdActns" class="TEditAction">Control</property> is the edit control on which the action performs its function. Set the value of <property namespace="StdActns" class="TEditAction">Control</property> to limit the action so that it only operates on a specific edit control. If <property namespace="StdActns" class="TEditAction">Control</property> is unassigned, the action dynamically locates the target edit control when it executes. </condition>
<class namespace="StdActns">TEditCut</class> cuts the selected text in a target edit <condition os="Linux">or memo </condition>control to the <condition os="Windows">Windows </condition>clipboard.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Add <class namespace="StdActns">TEditCut</class> to an action list to allow users to cut selected text to the clipboard using menu items or toolbar buttons. Controls such as menu items and tool buttons linked to this action cause the application to cut the currently selected text in an active text control to the clipboard.</para>
<class namespace="StdActns">TEditCut</class> is designed to work with an edit control (TCustomEdit <condition os="Linux">or TCustomMemo </condition>descendant) as a target. It automatically disables itself if the active control in a form is not an edit control or if that edit control does not have a selection to cut.</para>
</comments>
</member>
<member name="M:StdActns.StdActns.ExecuteTarget">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Cuts selected text in the target control to the <condition os="Windows">Windows </condition>clipboard.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call the <method namespace="StdActns" class="TEditCut">ExecuteTarget</method> method. This method is called automatically when the action fires in response to a user action (for example, when the user selects a menu item or presses a tool button that is linked to this action).</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Target is the currently active object when the action fires.</para>
<method namespace="StdActns" class="TEditCut">ExecuteTarget</method> checks that Target is an edit control (TCustomEditControl descendant), and if so, calls its CutToClipboard method, cutting the selected text to the clipboard.</para>
<class namespace="StdActns">TEditCopy</class> copies the selected text in a target edit control to the <condition os="Windows">Windows </condition>clipboard.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Add <class namespace="StdActns">TEditCopy</class> to an action list to allow users to copy selected text to the clipboard using menu items or toolbar buttons. Controls such as menu items and tool buttons linked to this action cause the application to copy the currently selected text in an active text control to the clipboard.</para>
<class namespace="StdActns">TEditCopy</class> is designed to work with an edit control (TCustomEdit descendant) as a target. It automatically disables itself if the active control in a form is not an edit control or if that edit control does not have any text selected.</para>
</comments>
</member>
<member name="M:StdActns.StdActns.ExecuteTarget">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Copies selected text in the target control to the <condition os="Windows">Windows </condition>clipboard.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call the <method namespace="StdActns" class="TEditCopy">ExecuteTarget</method> method. This method is called automatically when the action fires in response to a user action (for example, when the user selects a menu item or presses a tool button that is linked to this action).</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Target is the currently active object when the action fires.</para>
<method namespace="StdActns" class="TEditCopy">ExecuteTarget</method> checks that Target is an edit control (TCustomEdit descendant), and if so, calls its CopyToClipboard method, copying the selected text to the clipboard.</para>
<class namespace="StdActns">TEditPaste</class> pastes text from the clipboard into the active edit <condition os="Linux">or memo </condition>control.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Add <class namespace="StdActns">TEditPaste</class> to an action list to enable users to paste text from the clipboard using menu items or toolbar buttons. Controls such as menu items and tool buttons linked to this action cause the application to paste text from the clipboard into an active text control.</para>
<class namespace="StdActns">TEditPaste</class> is designed to work with an edit control (TCustomEdit <condition os="Linux">or TCustomMemo </condition>descendant) as a target. It automatically disables itself if the clipboard does not contain text.</para>
</comments>
</member>
<member name="M:StdActns.StdActns.UpdateTarget">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Enables or disables the action, depending on the contents of the clipboard.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call the <method namespace="StdActns" class="TEditPaste">UpdateTarget</method> method. This method is called automatically so that actions can update themselves according to current conditions.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">In <method namespace="StdActns" class="TEditPaste">TEditPaste</method>, <method namespace="StdActns" class="TEditPaste">UpdateTarget</method> checks whether the clipboard contains text. If so, <method namespace="StdActns" class="TEditPaste">UpdateTarget</method> sets Enabled to true. If not, <method namespace="StdActns" class="TEditPaste">UpdateTarget</method> sets Enabled to false.</para>
</comments>
</member>
<member name="M:StdActns.StdActns.ExecuteTarget">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Pastes text from the clipboard into the target edit control.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call the <method namespace="StdActns" class="TEditPaste">ExecuteTarget</method> method. This method is called automatically when the action fires in response to a user action (for example, when the user selects a menu item or presses a tool button that is linked to this action).</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Target is the currently active object when the action fires.</para>
<method namespace="StdActns" class="TEditPaste">ExecuteTarget</method> checks that Target is a TCustomEdit descendant, and if so, calls its PasteFromClipboard method, pasting in any text on the clipboard.</para>
<class namespace="StdActns">TEditSelectAll</class> selects all text in an active text control.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Add <class namespace="StdActns">TEditSelectAll</class> to an action list to allow users to select all the text in a text control using menu items or toolbar buttons. Controls such as menu items and tool buttons linked to this action cause the application to select all text in an active text control.</para>
<class namespace="StdActns">TEditSelectAll</class> is designed to work with an edit control (TCustomEdit descendant) as a target. It automatically disables itself if the active control in a form is not an edit control or if the edit control does not have any text.</para>
</comments>
</member>
<member name="M:StdActns.StdActns.ExecuteTarget">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Selects all text in the target edit control.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call the <method namespace="StdActns" class="TEditSelectAll">ExecuteTarget</method> method. This method is called automatically when the action fires in response to a user action (for example, when the user selects a menu item or presses a tool button that is linked to this action).</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Target is the currently active object when the action fires.</para>
<method namespace="StdActns" class="TEditSelectAll">ExecuteTarget</method> checks that Target is a TCustomEdit descendant, and if so, calls its SelectAll method, selecting all of its text.</para>
</comments>
</member>
<member name="M:StdActns.StdActns.UpdateTarget">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Enables or disables the action, depending on the contents of the target edit control.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call the <method namespace="StdActns" class="TEditSelectAll">UpdateTarget</method> method. This method is called automatically so that actions can update themselves according to current conditions.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">In <method namespace="StdActns" class="TEditSelectAll">TEditSelectAll</method>, <method namespace="StdActns" class="TEditSelectAll">UpdateTarget</method> checks whether Target is a text control that contains text. If so, <method namespace="StdActns" class="TEditSelectAll">UpdateTarget</method> sets Enabled to true. If not, <method namespace="StdActns" class="TEditSelectAll">UpdateTarget</method> sets Enabled to false.</para>
<class namespace="StdActns">TEditUndo</class> backs out the last change in an edit control.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Add <class namespace="StdActns">TEditUndo</class> to an action list to allow users to back out edits using menu items or toolbar buttons. Controls such as menu items and tool buttons linked to this action cause the application to undo the last edit in an active text control.</para>
<class namespace="StdActns">TEditUndo</class> is designed to work with an edit control (TCustomEdit descendant) as a target. It automatically disables itself if the active control in a form is not an edit control that can back out the last edit.</para>
</comments>
</member>
<member name="M:StdActns.StdActns.ExecuteTarget">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Backs out the last edit from the target control.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call the <method namespace="StdActns" class="TEditUndo">ExecuteTarget</method> method. This method is called automatically when the action fires in response to a user action (for example, when the user selects a menu item or presses a tool button that is linked to this action).</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Target is the currently active object when the action fires.</para>
<method namespace="StdActns" class="TEditUndo">ExecuteTarget</method> checks that Target is a TCustomEdit descendant, and if so, calls its Undo method, backing out the last change.</para>
</comments>
</member>
<member name="M:StdActns.StdActns.UpdateTarget">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Enables or disables the action, depending on the currently active control in the form.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call the <method namespace="StdActns" class="TEditUndo">UpdateTarget</method> method. This method is called automatically so that actions can update themselves according to current conditions.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">In <method namespace="StdActns" class="TEditUndo">TEditUndo</method>, <method namespace="StdActns" class="TEditUndo">UpdateTarget</method> checks whether the current target object (specified by the Target parameter) is an edit control that is in a state where it can back out changes. If so, <method namespace="StdActns" class="TEditUndo">UpdateTarget</method> sets Enabled to true. If not, <method namespace="StdActns" class="TEditUndo">UpdateTarget</method> sets Enabled to false.</para>
<class namespace="StdActns">TEditDelete</class> deletes the selected text in a target edit <condition os="Linux">or memo </condition>control.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Add <class namespace="StdActns">TEditDelete</class> to an action list to let users delete selected text using menu items or toolbar buttons. Controls such as menu items and tool buttons linked to this action cause the application to delete the currently selected text in an active text control.</para>
<class namespace="StdActns">TEditDelete</class> is designed to work with an edit control (TCustomEdit <condition os="Linux">or TCustomMemo </condition>descendant) as a target. It automatically disables itself if the active control in a form is not an edit control or if the active edit control does not have any selected text.</para>
</comments>
</member>
<member name="M:StdActns.StdActns.ExecuteTarget">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Deletes selected text in the target control.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call the <method namespace="StdActns" class="TEditDelete">ExecuteTarget</method> method. This method is called automatically when the action fires in response to a user action (for example, when the user selects a menu item or presses a tool button that is linked to this action).</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Target is the currently active object when the action fires.</para>
<method namespace="StdActns" class="TEditDelete">ExecuteTarget</method> checks that Target is a TCustomEdit descendant, and if so, calls its Clear<condition os="Windows">Selection</condition> method, deleting the selected text.</para>
</comments>
</member>
<member name="M:StdActns.StdActns.UpdateTarget">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Enables or disables the action, depending on the currently active control in the form.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call the <method namespace="StdActns" class="TEditDelete">UpdateTarget</method> method. This method is called automatically when the application is idle so that actions can update themselves according to current conditions.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">In <method namespace="StdActns" class="TEditDelete">TEditDelete</method>, <method namespace="StdActns" class="TEditDelete">UpdateTarget</method> checks whether the current target object (specified by the Target parameter) is an edit control that has some of its text selected. If so, <method namespace="StdActns" class="TEditDelete">UpdateTarget</method> sets Enabled to true. If not, <method namespace="StdActns" class="TEditDelete">UpdateTarget</method> sets Enabled to false.</para>
<class namespace="StdActns">TWindowAction</class> implements the common behavior for actions that work on MDI forms. Each descendant class performs a specific task, such as arranging, cascading, closing, tiling, or minimizing MDI child forms. Do not use <class namespace="StdActns">TWindowAction</class> directly in an application. Instead, use a <class namespace="StdActns">TWindowAction</class> descendant such as TWindowClose, TWindowCascade, TWindowMinimizeAll, TWindowArrange, TWindowTileHorizontal, or TWindowTileVertical. </para>
<class namespace="StdActns">TWindowAction</class> ensures that the action is enabled as long as the target is an MDI parent form. <class namespace="StdActns">TWindowAction</class> descendants override the ExecuteTarget method to execute their specific function on the targets child forms.</para>
</comments>
</member>
<member name="M:StdActns.StdActns.HandlesTarget">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Indicates whether the action can execute its function.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call the <method namespace="StdActns" class="TWindowAction">HandlesTarget</method> method. This method is called automatically when the user invokes an object (such as a tool button or menu item) that is linked to this action. The <method namespace="StdActns" class="TWindowAction">HandlesTarget</method> method provides the action object with an opportunity to indicate whether it is appropriate to execute at this time with the object specified by the Target parameter as a "target".</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">As implemented in <method namespace="StdActns" class="TWindowAction">TWindowAction</method>, <method namespace="StdActns" class="TWindowAction">HandlesTarget</method> makes sure that the target is an MDI parent form. If the target is appropriate, <method namespace="StdActns" class="TWindowAction">HandlesTarget</method> sets the Form property.</para>
</comments>
</member>
<member name="M:StdActns.StdActns.UpdateTarget">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Enables or disables the action, depending on whether the target form has MDI children.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call the <method namespace="StdActns" class="TWindowAction">UpdateTarget</method> method. This method is called automatically so that actions can update themselves according to current conditions.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">In <method namespace="StdActns" class="TWindowAction">TWindowAction</method>, <method namespace="StdActns" class="TWindowAction">UpdateTarget</method> checks that the target object is an MDI parent form with an MDIChildCount property greater than 0. If so, <method namespace="StdActns" class="TWindowAction">UpdateTarget</method> sets the Enabled property to true. Otherwise, it sets Enabled to false.</para>
</comments>
</member>
<member name="P:StdActns.StdActns.Form">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Provides access to the target of the action.</para>
<class namespace="StdActns">TWindowClose</class> closes the active MDI child form.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Add <class namespace="StdActns">TWindowClose</class> to an action list to allow users to close the active MDI child form. Controls such as menu items and tool buttons linked to this action cause the application to call the Close method of the active MDI child.</para>
<class namespace="StdActns">TWindowClose</class> is designed to work with an MDI parent form as a target. It automatically disables itself if the active form is not an MDI parent or if it has no active MDI child.</para>
</comments>
</member>
<member name="M:StdActns.StdActns.ExecuteTarget">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Closes the active MDI child.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call the <method namespace="StdActns" class="TWindowClose">ExecuteTarget</method> method. This method is called automatically when the action fires in response to a user action (for example, when the user selects a menu item or presses a tool button that is linked to this action).</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Target is the currently active object when the action fires.</para>
<method namespace="StdActns" class="TWindowClose">ExecuteTarget</method> sets the Form property to Target, which must be an MDI parent form. It then obtains a reference to the active MDI child by reading the form's ActiveMDIChild property. It calls this child form's Close method to close the active child form.</para>
</comments>
</member>
<member name="M:StdActns.StdActns.UpdateTarget">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Enables or disables the action, depending on whether the target form an active child.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call the <method namespace="StdActns" class="TWindowClose">UpdateTarget</method> method. This method is called automatically so that actions can update themselves according to current conditions.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">In <method namespace="StdActns" class="TWindowClose">TWindowClose</method>, <method namespace="StdActns" class="TWindowClose">UpdateTarget</method> checks that the target object is an MDI parent form with a non-nil (Delphi) or NULL (C++) ActiveMDIChild property. If so, <method namespace="StdActns" class="TWindowClose">UpdateTarget</method> sets the Enabled property to true. Otherwise, it sets Enabled to false.</para>
<class namespace="StdActns">TWindowCascade</class> cascades the MDI child forms.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Add <class namespace="StdActns">TWindowCascade</class> to an action list to allow users to arrange the MDI child forms in an overlapping cascade. Controls such as menu items and tool buttons linked to this action cause the application to call the Cascade method of the MDI parent form.</para>
<class namespace="StdActns">TWindowCascade</class> is designed to work with an MDI parent form as a target. It automatically disables itself if the active form is not an MDI parent or if it has no MDI children.</para>
</comments>
</member>
<member name="M:StdActns.StdActns.ExecuteTarget">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Arranges the MDI child forms in an overlapping cascade.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call the <method namespace="StdActns" class="TWindowCascade">ExecuteTarget</method> method. This method is called automatically when the action fires in response to a user action (for example, when the user selects a menu item or presses a tool button that is linked to this action).</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Target is the currently active form when the action fires.</para>
<method namespace="StdActns" class="TWindowCascade">ExecuteTarget</method> sets the Form property to Target, which must be an MDI parent form. It then calls that form's Cascade method to arrange MDI child windows.</para>
<class namespace="StdActns">TWindowTileHorizontal</class> arranges MDI child forms so that they are all the same size, tiled horizontally.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Add <class namespace="StdActns">TWindowTileHorizontal</class> to an action list to allow users to tile the MDI child forms horizontally. Controls such as menu items and tool buttons linked to this action cause the MDI parent form to tile its children horizontally.</para>
<class namespace="StdActns">TWindowTileHorizontal</class> is designed to work with an MDI parent form as a target. It automatically disables itself if the active form is not an MDI parent or if it has no MDI children.</para>
</comments>
</member>
<member name="M:StdActns.StdActns.ExecuteTarget">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Tiles the child forms of the target MDI parent horizontally.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call the <method namespace="StdActns" class="TWindowTileHorizontal">ExecuteTarget</method> method. This method is called automatically when the action fires in response to a user action (for example, when the user selects a menu item or presses a tool button that is linked to this action).</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Target is the currently active form when the action fires.</para>
<method namespace="StdActns" class="TWindowTileHorizontal">ExecuteTarget</method> sets the Form property to Target, which must be an MDI parent form. It then instructs the form to tile its child forms horizontally.</para>
<class namespace="StdActns">TWindowTileVertical</class> arranges MDI child forms so that they are all the same size, tiled vertically.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Add <class namespace="StdActns">TWindowTileVertical</class> to an action list to allow users to tile the MDI child forms vertically. Controls such as menu items and tool buttons linked to this action cause the MDI parent form to tile its children vertically.</para>
<class namespace="StdActns">TWindowTileVertical</class> is designed to work with an MDI parent form as a target. It automatically disables itself if the active form is not an MDI parent or if it has no MDI children.</para>
</comments>
</member>
<member name="M:StdActns.StdActns.ExecuteTarget">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Tiles the child forms of the target MDI parent vertically.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call the <method namespace="StdActns" class="TWindowTileVertical">ExecuteTarget</method> method. This method is called automatically when the action fires in response to a user action (for example, when the user selects a menu item or presses a tool button that is linked to this action).</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Target is the currently active form when the action fires.</para>
<method namespace="StdActns" class="TWindowTileVertical">ExecuteTarget</method> sets the Form property to Target, which must be an MDI parent form. It then instructs the form to tile its child forms vertically.</para>
<class namespace="StdActns">TWindowMinimizeAll</class> minimizes all MDI child forms.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Add <class namespace="StdActns">TWindowMinimizeAll</class> to an action list to allow users to minimize the MDI child forms in an MDI application. Controls such as menu items and tool buttons linked to this action cause the application to iterate through the MDI child forms, setting their WindowState to wsMinimized.</para>
<class namespace="StdActns">TWindowMinimizeAll</class> is designed to work with an MDI parent form as a target. It automatically disables itself if the active form is not an MDI parent or if it has no MDI children.</para>
</comments>
</member>
<member name="M:StdActns.StdActns.ExecuteTarget">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Minimizes all MDI child forms of the target MDI parent.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call the <method namespace="StdActns" class="TWindowMinimizeAll">ExecuteTarget</method> method. This method is called automatically when the action fires in response to a user action (for example, when the user selects a menu item or presses a tool button that is linked to this action).</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Target is the currently active form when the action fires.</para>
<method namespace="StdActns" class="TWindowMinimizeAll">ExecuteTarget</method> sets the Form property to Target, which must be an MDI parent form. It then iterates through that form's MDI children, setting each child form's WindowState to wsMinimized.</para>
<class namespace="StdActns">TWindowArrange</class> arranges the icons of minimized MDI child forms.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Add <class namespace="StdActns">TWindowArrange</class> to an action list to allow users to arrange the icons that represent minimized MDI child forms. Controls such as menu items and tool buttons linked to this action cause the application to call the ArrangeIcons method of the MDI parent form.</para>
<class namespace="StdActns">TWindowArrange</class> is designed to work with an MDI parent form as a target. It automatically disables itself if the active form is not an MDI parent or if it has no MDI children.</para>
</comments>
</member>
<member name="M:StdActns.StdActns.ExecuteTarget">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Arranges the icons of minimized MDI child forms</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call the <method namespace="StdActns" class="TWindowArrange">ExecuteTarget</method> method. This method is called automatically when the action fires in response to a user action (for example, when the user selects a menu item or presses a tool button that is linked to this action).</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Target is the currently active form when the action fires.</para>
<method namespace="StdActns" class="TWindowArrange">ExecuteTarget</method> sets the Form property to Target, which must be an MDI parent form. It then calls that form's ArrangeIcons method to arrange the icons of minimized MDI children.</para>
<class namespace="StdActns">THelpAction</class> implements the common behavior for actions that work the help system. Each descendant class performs a specific help function. Do not use <class namespace="StdActns">THelpAction</class> directly in an application. Instead, use a <class namespace="StdActns">THelpAction</class> descendant such as THelpContents, THelpContextAction, THelpOnHelp, or THelpTopicSearch. </para>
<class namespace="StdActns">THelpAction</class> ensures that the action is enabled as long as there is an application object to pass commands on to a registered help system. <class namespace="StdActns">THelpAction</class> descendants override the ExecuteTarget method to execute their specific help command.</para>
</comments>
</member>
<member name="M:StdActns.StdActns.HandlesTarget">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Indicates whether the action can execute its function.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call the <method namespace="StdActns" class="THelpAction">HandlesTarget</method> method. This method is called automatically when the user invokes an object (such as a tool button or menu item) that is linked to this action. The <method namespace="StdActns" class="THelpAction">HandlesTarget</method> method provides the action object with an opportunity to indicate whether it is appropriate to execute at this time with the object specified by the Target parameter as a "target".</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">As implemented in <method namespace="StdActns" class="THelpAction">THelpAction</method>, <method namespace="StdActns" class="THelpAction">HandlesTarget</method> ignores the Target parameter and always returns true, because the help actions do not rely on a specific target object.</para>
</comments>
</member>
<member name="M:StdActns.StdActns.UpdateTarget">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Enables or disables the action, depending on the availability of the Application object.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call the <method namespace="StdActns" class="THelpAction">UpdateTarget</method> method. This method is called automatically so that actions can update themselves according to current conditions.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">In <method namespace="StdActns" class="THelpAction">THelpAction</method>, <method namespace="StdActns" class="THelpAction">UpdateTarget</method> checks whether the global Application variable is assigned, because this object is required to pass help commands on to <condition os="Windows">WinHelp</condition>
<condition os="Linux">HyperHelp</condition>. If Application is assigned, <method namespace="StdActns" class="THelpAction">UpdateTarget</method> sets Enabled to true. If not, <method namespace="StdActns" class="THelpAction">UpdateTarget</method> sets Enabled to false.</para>
<class namespace="StdActns">THelpContents</class> brings up the contents for the default help system.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Add <class namespace="StdActns">THelpContents</class> to an action list to allow users to bring up the help contents by using menu items or toolbar buttons. Controls such as menu items and tool buttons linked to this action cause the application to send the default help system a command to show the help contents.</para>
<condition os="Windows">On WinHelp, <class namespace="StdActns">THelpContents</class> displays the Help Topics dialog on the tab (Contents, Index or Find) that was last used.</condition>
</para>
</comments>
</member>
<member name="M:StdActns.StdActns.ExecuteTarget">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Displays a dialog that lists the help topics.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call the <method namespace="StdActns" class="THelpContents">ExecuteTarget</method> method. This method is called automatically when the action fires in response to a user action (for example, when the user selects a menu item or presses a tool button that is linked to this action).</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Target is the currently active object when the action fires.</para>
<method namespace="StdActns" class="THelpContents">ExecuteTarget</method> calls the application's HelpCommand method, telling it to list the help topics.</para>
<class namespace="StdActns">THelpTopicSearch</class> brings up the help index.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Add <class namespace="StdActns">THelpTopicSearch</class> to an action list to allow users to bring up the help index. Controls such as menu items and tool buttons linked to this action cause the application to send the default help system a command to display the help index.</para>
<class namespace="StdActns">THelpOnHelp</class> brings up a help topic on how to use Help.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Add <class namespace="StdActns">THelpOnHelp</class> to an action list to allow users to bring up the help system that describes how to use help. Controls such as menu items and tool buttons linked to this action cause the application to send the default help system a command to display its help.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Note that on recent versions of Windows with a default help system of WinHelp, this brings up an HTML help file that does not describe the WinHelp system.</para>
</comments>
</member>
<member name="M:StdActns.StdActns.ExecuteTarget">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Brings up the help system's help file.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">This method is called automatically when the action fires in response to a user action (for example, when the user selects a menu item or presses a tool button that is linked to this action).</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Target is the currently active object when the action fires.</para>
<method namespace="StdActns" class="THelpOnHelp">ExecuteTarget</method> calls the application's HelpCommand method, telling it to display the Help system's own help file.</para>
<class namespace="StdActns">THelpContextAction</class> brings up the help topic for the active control.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Add <class namespace="StdActns">THelpContextAction</class> to an action list to allow users to bring up the help for an active control. Controls such as menu items and tool buttons linked to this action cause the application to send the help engine a command to display the help topic specified by the active control's HelpContext property.</para>
</comments>
</member>
<member name="M:StdActns.StdActns.ExecuteTarget">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Displays the help topic associated with the active control's HelpContext property.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call the <method namespace="StdActns" class="THelpContextAction">ExecuteTarget</method> method. This method is called automatically when the action fires in response to a user action (for example, when the user selects a menu item or presses a tool button that is linked to this action).</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Target is the currently active object when the action fires.</para>
<method namespace="StdActns" class="THelpContextAction">ExecuteTarget</method> calls the application's HelpCommand method, telling it to display the topic specified by the active control's HelpContext property. <method namespace="StdActns" class="THelpContextAction">ExecuteTarget</method> gets the active control from the global Screen object rather than using the Target parameter.</para>
</comments>
</member>
<member name="M:StdActns.StdActns.UpdateTarget">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Enables or disables the action, depending on whether there is an active object.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call the <method namespace="StdActns" class="THelpContextAction">UpdateTarget</method> method. This method is called automatically so that actions can update themselves according to current conditions.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">In <method namespace="StdActns" class="THelpContextAction">THelpContextAction</method>, <method namespace="StdActns" class="THelpContextAction">UpdateTarget</method> checks whether the global Screen object's ActiveConrol property is assigned. If there is an active control, <method namespace="StdActns" class="THelpContextAction">UpdateTarget</method> sets Enabled to true. If not, <method namespace="StdActns" class="THelpContextAction">UpdateTarget</method> sets Enabled to false.</para>
</comments>
</member>
<member name="T:StdActns.TCommonDialogAction">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">T<condition os="Windows">Common</condition>DialogAction is the base class for action objects that display a dialog.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">T<condition os="Windows">Common</condition>DialogAction implements the common behavior for actions that display a dialog when executed. Each descendant class represents a specific dialog. Do not use T<condition os="Windows">Common</condition>DialogAction directly in an application. Instead, use the specific T<condition os="Windows">Common</condition>DialogAction descendant that represents the type of dialog you want to execute. The various T<condition os="Windows">Common</condition>DialogAction descendants are listed in the See also list.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">T<condition os="Windows">Common</condition>DialogAction objects do not require a specific type of control to be active: they handle any target. When executed, the dialog action displays its dialog, and then generates an OnAccept or OnCancel event, which you can use to process the results from the dialog.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">When using T<condition os="Windows">Common</condition>DialogAction desendants, there is no need to place the dialog component in your form or data module. The action object creates its own dialog component.</para>
</comments>
</member>
<member name="M:StdActns.StdActns.HandlesTarget">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Indicates whether the action can execute its dialog.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call the <method namespace="StdActns" class="TCommonDialogAction">HandlesTarget</method> method. This method is called automatically when the user invokes an object (such as a tool button or menu item) that is linked to this action. The <method namespace="StdActns" class="TCommonDialogAction">HandlesTarget</method> method lets the action object indicate whether it is appropriate to execute at this time with the object specified by the Target parameter as a "target".</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Target is the currently active object.</para>
<method namespace="StdActns" class="TCommonDialogAction">HandlesTarget</method> always returns true, because the execution of the dialog does not depend on any target object.</para>
<method namespace="StdActns" class="TCommonDialogAction">Create</method>s an instance of T<condition os="Windows">Common</condition>DialogAction.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Most applications do not need to call the T<condition os="Windows">Common</condition>DialogAction constructor because actions are added at design time to an action list<condition os="Windows"> or action manager</condition>. </para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The T<condition os="Windows">Common</condition>DialogAction constructor creates an instance of its associated dialog, which descendant classes make available through the Dialog property.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">AOwner specifies the Owner for the action. This is the component that is responsible for freeing the T<condition os="Windows">Common</condition>DialogAction instance.</para>
</comments>
</member>
<member name="M:StdActns.StdActns.ExecuteTarget">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Executes the associated dialog and generates an OnAccept or OnCancel event.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call the <method namespace="StdActns" class="TCommonDialogAction">ExecuteTarget</method> method. This method is called automatically when the action fires in response to a user action (for example, when the user selects a menu item or presses a tool button that is linked to this action).</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Target is the currently active object when the action fires.</para>
<method namespace="StdActns" class="TCommonDialogAction">ExecuteTarget</method> ignores the Target parameter and </para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">1. Generates a BeforeExecute event, so that the application can initialize the associated dialog according to current conditions.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">2. Calls the Execute method of the dialog. </para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">3. Generates an OnAccept event or an OnCancel event, depending on the value returned by the Execute method. You can write code to make use of the results from executing the dialog in these event handlers.</para>
</comments>
</member>
<member name="P:StdActns.StdActns.ExecuteResult">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Indicates the result of executing the associated dialog.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">When the dialog action fires, it executes the dialog specified by the <condition os="Linux">Common</condition>Dialog property and sets <property namespace="StdActns" class="TCommonDialogAction">ExecuteResult</property> the value returned by that dialog's Execute method. Thus, <property namespace="StdActns" class="TCommonDialogAction">ExecuteResult</property> is false if the dialog has not executed or the user canceled when the dialog executed, and true if the user exited the dialog by clicking OK.</para>
</comments>
</member>
<member name="E:StdActns.StdActns.BeforeExecute">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Occurs immediately before the dialog appears.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Write a <event namespace="StdActns" class="TCommonDialogAction">BeforeExecute</event> event handler to initialize the dialog immediately before it executes. When the action fires, it generates a <event namespace="StdActns" class="TCommonDialogAction">BeforeExecute</event> event, and then executes its associated dialog. </para>
<class namespace="StdActns">TFileAction</class> implements the FileName property that is common to action objects that display a file selection object.</para>
</comments>
</member>
<member name="P:StdActns.StdActns.FileName">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Specifies the file name for the file selection dialog.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Applications can't use the protected <property namespace="StdActns" class="TFileAction">FileName</property> property. To access the name of the file selected by the user, use the Dialog property of a <property namespace="StdActns" class="TFileAction">TFileAction</property> descendant.</para>
<property namespace="StdActns" class="TFileAction">FileName</property> is the same as the <property namespace="StdActns" class="TFileAction">FileName</property> property of the associated dialog.</para>
<class namespace="StdActns">TFileOpen</class> is the standard action for displaying a file open dialog.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Add <class namespace="StdActns">TFileOpen</class> to an action list to add a common file open dialog to your application. Controls such as menu items and tool buttons linked to this action cause the application to display a file open dialog when invoked. Use the OnAccept event to respond after the user selects a file name in the file open dialog or the OnCancel event to respond when the user cancels from the dialog. In the event handler for these events, you can read the file name from the dialog specified by the Dialog property.</para>
<method namespace="StdActns" class="TFileOpen">Create</method>s an instance of <method namespace="StdActns" class="TFileOpen">TFileOpen</method>.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Most applications do not need to call the <method namespace="StdActns" class="TFileOpen">TFileOpen</method> constructor because actions are added at design time to an action manager or action list. </para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The <method namespace="StdActns" class="TFileOpen">TFileOpen</method> constructor creates an instance of its associated dialog and assigns that component as the value of the Dialog property.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">AOwner specifies the Owner for the action. This is the component that is responsible for freeing the <method namespace="StdActns" class="TFileOpen">TFileOpen</method> instance.</para>
</comments>
</member>
<member name="P:StdActns.StdActns.Dialog">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Provides access the open dialog that the action executes.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <property namespace="StdActns" class="TFileOpen">Dialog</property> to configure the open dialog before the action fires. For example, you can set the open dialog's default extension or initially selected file at design time using the Object Inspector. From an OnAccept event handler, use <property namespace="StdActns" class="TFileOpen">Dialog</property> to read the selected file name.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">When using a file open action, you do not place a TOpen<property namespace="StdActns" class="TFileOpen">Dialog</property> component on the form or data module at design time. Instead, you add the <property namespace="StdActns" class="TFileOpen">TFileOpen</property> action to your action list and then use the <property namespace="StdActns" class="TFileOpen">Dialog</property> property. The open dialog component is created by the <property namespace="StdActns" class="TFileOpen">TFileOpen</property> constructor. </para>
</comments>
</member>
<member name="P:StdActns.StdActns.UseDefaultApp">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use the default application to open the file.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">When set to True, <property namespace="StdActns" class="TFileOpen">UseDefaultApp</property> automatically uses the default application as specified in the registry to open the file. Otherwise, <property namespace="StdActns" class="TFileOpen">TFileOpen</property> displays the FileOpen dialog. The default is False.</para>
<class namespace="StdActns">TFileOpenWith</class> is the standard action for displaying the dialog that lets users choose what application to user for opening a file.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Add <class namespace="StdActns">TFileOpenWith</class> to an action list to add the Open With dialog to your application. Controls such as menu items and tool buttons linked to this action cause the application to display the Open With dialog and then use the chosen application to open the file specified by the FileName property. If the FileName property was not previously set, <class namespace="StdActns">TFileOpenWith</class> first displays an Open dialog in which the user can select a file name before displaying the Open With dialog for the user to specify what application to use when opening that file.</para>
<class namespace="StdActns">TFileOpenWith</class> always displays the Open With dialog, even if the specified file already has an extension with a registered association. To let users open a file by letting Windows choose the application based on the extension (or bring up the Open With dialog automatically when there is no association for the extension), use the TFileRun action instead.</para>
</note>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">You do not need to do anything to launch the selected application. <class namespace="StdActns">TFileOpenWith</class> automatically opens the file using the application that the user selects. </para>
<para>The Dialog property of <class namespace="StdActns">TFileOpenWith</class> represents the Open dialog in which a user selects the file to open, not the Open With dialog in which they choose the application to user for opening that file. Similarly, the OnAccept and OnCancel events do not occur after the action displays the Open With dialog ΓÇô rather, they occur after the Open dialog that appears when the FileName property is not preset.</para>
</note>
</comments>
</member>
<member name="M:StdActns.StdActns.ExecuteTarget">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Displays the Open With dialog and then opens a file with the application the user selects.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">This method is called automatically when the action fires in response to a user action (for example, when the user selects a menu item or presses a tool button that is linked to this action).</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Target is the currently active object when the action fires.</para>
<method namespace="StdActns" class="TFileOpenWith">ExecuteTarget</method> ignores the Target parameter and does the following:</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">1. If the FileName property is not set, it displays the Open dialog (specified by the Dialog property) to let the user select a file to open.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">2. If it displays the Open dialog, it generates an OnAccept or OnCancel event, depending on whether the user exited the Open dialog by clicking OK or Cancel.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">3. It displays the Open With dialog for the user to choose an application with which to view the file specified by FileName or selected in the Open dialog.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">4. It launches the selected application, displaying the specified File.</para>
</comments>
</member>
<member name="P:StdActns.StdActns.FileName">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Specifies the file to be opened when the action executes.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Set <property namespace="StdActns" class="TFileOpenWith">FileName</property> to specify the file to open with the application that the user selects in the Open With dialog. If the <property namespace="StdActns" class="TFileOpenWith">FileName</property> property is not set, then when the action executes, it displays an Open dialog (specified by the Dialog property) in which the user can select a file before displaying the Open With dialog.</para>
<condition status="hold">When the action displays the Open dialog, it uses the selected file to set <property namespace="StdActns" class="TFileOpenWith">FileName</property>. Thus, if you want to let the user select a file the next time the action executes, you must clear the <property namespace="StdActns" class="TFileOpenWith">FileName</property> property in an OnAccept event handler.</condition>
</para>
</note>
</comments>
</member>
<member name="E:StdActns.StdActns.AfterOpen">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Occurs after an application completes opening an Open With dialog.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Write an <event namespace="StdActns" class="TFileOpenWith">AfterOpen</event> event handler to take specific action immediately after an application opens the Open With dialog, but before the user responds to the dialog.</para>
<class namespace="StdActns">TFileSaveAs</class> is the standard action for displaying a file save as dialog.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Add <class namespace="StdActns">TFileSaveAs</class> to an action list to add a common file save dialog to your application. Controls such as menu items and tool buttons linked to this action cause the application to display a file save dialog when invoked. Use the OnAccept event to respond after the user selects a file name in the file save dialog or the OnCancel event to respond when the user cancels from the dialog. In the event handler for these events, you can read the file name from the dialog specified by the Dialog property.</para>
<method namespace="StdActns" class="TFileSaveAs">Create</method>s an instance of <method namespace="StdActns" class="TFileSaveAs">TFileSaveAs</method>.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Most applications do not need to call the <method namespace="StdActns" class="TFileSaveAs">TFileSaveAs</method> constructor because actions are added at design time to an action manager or action list. </para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The <method namespace="StdActns" class="TFileSaveAs">TFileSaveAs</method> constructor creates an instance of its associated dialog and assigns that component as the value of the Dialog property.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">AOwner specifies the Owner for the action. This is the component that is responsible for freeing the <method namespace="StdActns" class="TFileSaveAs">TFileSaveAs</method> instance.</para>
</comments>
</member>
<member name="P:StdActns.StdActns.Dialog">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Provides access the save dialog that the action executes.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <property namespace="StdActns" class="TFileSaveAs">Dialog</property> to configure the save as dialog before the action fires. For example, you can set the save as dialog's default extension at design time using the Object Inspector. <property namespace="StdActns" class="TFileSaveAs">Dialog</property> is also useful for reading the selected file name from an OnAccept event handler.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">When using a file save as action, you do not place a TSave<property namespace="StdActns" class="TFileSaveAs">Dialog</property> component on the form or data module at design time. Instead, you add the <property namespace="StdActns" class="TFileSaveAs">TFileSaveAs</property> to your action list and then use the <property namespace="StdActns" class="TFileSaveAs">Dialog</property> property. The save dialog component is created by the <property namespace="StdActns" class="TFileSaveAs">TFileSaveAs</property> constructor.</para>
<class namespace="StdActns">TFilePrintSetup</class> is the standard action for displaying a printer setup dialog.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Add <class namespace="StdActns">TFilePrintSetup</class> to an action list to add a common printer setup dialog to your application. Controls such as menu items and tool buttons linked to this action cause the application to display the printer setup dialog when invoked. Because the printer setup dialog automatically configures the printers as specified when the user clicks OK, there is usually no need to write an OnAccept or OnCancel event handler to continue processing after the dialog shuts down.</para>
</comments>
</member>
<member name="P:StdActns.StdActns.Dialog">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Provides access the printer setup dialog that the action executes.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">When using a file print setup action, you do not place a TPrinterSetup<property namespace="StdActns" class="TFilePrintSetup">Dialog</property> component on the form or data module at design time. Instead, you add the <property namespace="StdActns" class="TFilePrintSetup">TFilePrintSetup</property> action to your action list. If you want to configure the dialog, for example to assign a help context, you can access the dialog component using the <property namespace="StdActns" class="TFilePrintSetup">Dialog</property> property. The printer setup dialog component is created by the <property namespace="StdActns" class="TFilePrintSetup">TFilePrintSetup</property> constructor.</para>
<class namespace="StdActns">TFilePageSetup</class> is the standard action for displaying a page setup dialog.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Add <class namespace="StdActns">TFilePageSetup</class> to an action list to add a common page setup dialog to your application. Controls such as menu items and tool buttons linked to this action cause the application to display the page setup dialog when invoked. Because the page setup dialog automatically configures the pages as specified when the user clicks OK, there is usually no need to write an OnAccept or OnCancel event handler to continue processing after the dialog shuts down.</para>
</comments>
</member>
<member name="P:StdActns.StdActns.Dialog">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Provides access the page setup dialog that the action executes.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">When using a file page setup action, you do not place a TPageSetup<property namespace="StdActns" class="TFilePageSetup">Dialog</property> component on the form or data module at design time. Instead, you add the <property namespace="StdActns" class="TFilePageSetup">TFilePageSetup</property> action to your action list. If you want to configure the dialog, for example to assign a help context, you can access the dialog component using the <property namespace="StdActns" class="TFilePageSetup">Dialog</property> property. The page setup dialog component is created by the <property namespace="StdActns" class="TFilePageSetup">TFilePageSetup</property> constructor.</para>
<class namespace="StdActns">TFileExit</class> is the standard action for shutting down an application.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Add <class namespace="StdActns">TFileExit</class> to an action list to let users shut down the application using a menu or tool bar. Controls linked to this action cause the application to shut down by closing the main form.</para>
</comments>
</member>
<member name="M:StdActns.StdActns.HandlesTarget">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Indicates whether the action can execute.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call the <method namespace="StdActns" class="TFileExit">HandlesTarget</method> method. This method is called automatically when the user invokes an object (such as a tool button or menu item) that is linked to this action. The <method namespace="StdActns" class="TFileExit">HandlesTarget</method> method provides the action object with an opportunity to indicate whether it is appropriate to execute at this time with the object specified by the Target parameter as a "target".</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Target is the currently active object.</para>
<method namespace="StdActns" class="TFileExit">HandlesTarget</method> always returns true, because shutting down the application does not depend on any target object.</para>
</comments>
</member>
<member name="M:StdActns.StdActns.ExecuteTarget">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Shuts down the main form of the application.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call the <method namespace="StdActns" class="TFileExit">ExecuteTarget</method> method. This method is called automatically when the action fires in response to a user action (for example, when the user selects a menu item or presses a tool button that is linked to this action).</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Target is the currently active object when the action fires.</para>
<method namespace="StdActns" class="TFileExit">ExecuteTarget</method> ignores the Target parameter and calls the Close method of the application's main form. This causes the application to shut down.</para>
<class namespace="StdActns">TSearchAction</class> implements the common behavior for actions that display a modeless dialog where the user can enter a search string for searching an edit control. Do not use <class namespace="StdActns">TSearchAction</class> directly in an application. Instead, use one of the <class namespace="StdActns">TSearchAction</class> descendants: TSearchFind or TSearchFindFirst for a simple locate dialog, TSearchReplace for a locate-and-replace dialog.</para>
<class namespace="StdActns">TSearchAction</class> descendants are designed to work with an edit control (TCustomEdit descendant) as a target. They automatically disable themselves if the active control in a form is not an edit control.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Unlike other dialog actions, search actions represent a modeless dialog. As a result, the OnAccept event occurs not when the user exits the dialog, but when the dialog first appears or comes into focus. When the user directs the dialog to search for or replace a string, the search action automatically performs that search, selecting or replacing text in the target edit control.</para>
</comments>
</member>
<member name="M:StdActns.StdActns.HandlesTarget">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Indicates whether the action can execute its dialog.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call the <method namespace="StdActns" class="TSearchAction">HandlesTarget</method> method. This method is called automatically when the user invokes an object (such as a tool button or menu item) that is linked to this action. The <method namespace="StdActns" class="TSearchAction">HandlesTarget</method> method lets the action object indicate whether it is appropriate to execute at this time with the object specified by the Target parameter as a "target".</para>
<method namespace="StdActns" class="TSearchAction">HandlesTarget</method> returns true if the target is an edit control that has keyboard focus.</para>
<method namespace="StdActns" class="TSearchAction">Create</method>s and initializes an instance of <method namespace="StdActns" class="TSearchAction">TSearchAction</method>.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Most applications do not need to call the <method namespace="StdActns" class="TSearchAction">TSearchAction</method> constructor because actions are added at design time to action lists or action managers. </para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The <method namespace="StdActns" class="TSearchAction">TSearchAction</method> constructor creates an instance of its associated dialog, which descendant classes surface as the Dialog property. It then assigns the Search method as an event handler for the dialog's OnFind event, so that the action responds automatically when user's direct the dialog to search for a specified text string.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">AOwner specifies the Owner for the action. This is the component that is responsible for freeing the <method namespace="StdActns" class="TSearchAction">TSearchAction</method> instance.</para>
</comments>
</member>
<member name="M:StdActns.StdActns.Search">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Selects the next occurrence of the search string in the target edit control.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Most applications have no need to call the <method namespace="StdActns" class="TSearchAction">Search</method> method: the T<method namespace="StdActns" class="TSearchAction">Search</method>Action constructor automatically assigns <method namespace="StdActns" class="TSearchAction">Search</method> as the OnFind event handler of its associated dialog. The dialog's OnFind event occurs when the user directs the dialog to find a specified string.</para>
<method namespace="StdActns" class="TSearchAction">Search</method> searches the target edit control for the string that is the FindText property of the search dialog, using the options specified by the dialog's Options property. If it finds the specified string, it selects it in the edit control. Otherwise, it displays a message to the user indicating that the string was not found.</para>
<para>If the search action is an instance of T<method namespace="StdActns" class="TSearchAction">Search</method>Find, <method namespace="StdActns" class="TSearchAction">Search</method> looks for the first occurrence of FindText after the current selection in the edit control. If the search action is an instance of T<method namespace="StdActns" class="TSearchAction">Search</method>FindFirst, <method namespace="StdActns" class="TSearchAction">Search</method> looks for the first occurrence of FindText, regardless of the current selection.</para>
</note>
</comments>
</member>
<member name="M:StdActns.StdActns.UpdateTarget">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Enables or disables the action, depending on the currently active control in the form.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call the <method namespace="StdActns" class="TSearchAction">UpdateTarget</method> method. This method is called automatically when the application is idle so that actions can update themselves according to current conditions.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">In <method namespace="StdActns" class="TSearchAction">TSearchAction</method>, <method namespace="StdActns" class="TSearchAction">UpdateTarget</method> checks whether the current target object (specified by the Target parameter) is an edit control. If so, <method namespace="StdActns" class="TSearchAction">UpdateTarget</method> sets Enabled to true. If not, <method namespace="StdActns" class="TSearchAction">UpdateTarget</method> sets Enabled to false.</para>
</comments>
</member>
<member name="M:StdActns.StdActns.ExecuteTarget">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Launches the associated dialog.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call the <method namespace="StdActns" class="TSearchAction">ExecuteTarget</method> method. This method is called automatically when the action fires in response to a user action (for example, when the user selects a menu item or presses a tool button that is linked to this action).</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Target is the currently active object when the action fires.</para>
<method namespace="StdActns" class="TSearchAction">ExecuteTarget</method> first launches its search or search and replace dialog. This is a modeless dialog, so the result of the dialog's Execute method simply indicates whether the dialog successfully appeared or was brought into focus. This result is set as the value of the ExecuteResult property, and an OnAccept or OnCancel event occurs, depending on whether the dialog was brought into focus.</para>
<class namespace="StdActns">TSearchFind</class> is the standard action for displaying a find dialog.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Add <class namespace="StdActns">TSearchFind</class> to an action list to add a modeless find dialog to your application. Controls such as menu items and tool buttons linked to this action cause the application to display the find dialog or bring it to the fore.</para>
<class namespace="StdActns">TSearchFind</class> is designed to work with an edit control (TCustomEdit descendant) as a target. It automatically disables itself if the active control in a form is not an edit control.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Search actions represent a modeless dialog. As a result, the OnAccept event occurs not when the user exits the dialog, but when the dialog first appears or comes into focus. When the user directs the dialog to search for a string, <class namespace="StdActns">TSearchFind</class> automatically performs that search, selecting the specified text in the target edit control.</para>
</comments>
</member>
<member name="P:StdActns.StdActns.Dialog">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Provides access the find dialog that the action executes.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <property namespace="StdActns" class="TSearchFind">Dialog</property> to configure the find dialog before the action fires or to close the modeless dialog programmatically. For example, you can set the find dialog's options at design time using the Object Inspector or call the dialog's Close<property namespace="StdActns" class="TSearchFind">Dialog</property> method to close it.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">When using a search-find action, you do not place a TFind<property namespace="StdActns" class="TSearchFind">Dialog</property> component on the form or data module at design time. Instead, you add the <property namespace="StdActns" class="TSearchFind">TSearchFind</property> action to your action list and then use the <property namespace="StdActns" class="TSearchFind">Dialog</property> property. The find dialog component is created by the <property namespace="StdActns" class="TSearchFind">TSearchFind</property> constructor.</para>
<class namespace="StdActns">TSearchReplace</class> is the standard action for displaying a find-and-replace dialog.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Add <class namespace="StdActns">TSearchReplace</class> to an action list to add a modeless find-and-replace dialog to your application. Controls such as menu items and tool buttons linked to this action cause the application to display the find-and-replace dialog or bring it to the fore.</para>
<class namespace="StdActns">TSearchReplace</class> is designed to work with an edit control (TCustomEdit descendant) as a target. It automatically disables itself if the active control in a form is not an edit control.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Search/replace actions represent a modeless dialog. As a result, the OnAccept event occurs not when the user exits the dialog, but when the dialog first appears or comes into focus. When the user directs the dialog to replace one or all instances of a string, <class namespace="StdActns">TSearchReplace</class> automatically performs the search and replaces the specified text in the target edit control.</para>
</comments>
</member>
<member name="M:StdActns.StdActns.ExecuteTarget">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Launches the associated dialog and assigns an event handler to replace found text.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call the <method namespace="StdActns" class="TSearchReplace">ExecuteTarget</method> method. This method is called automatically when the action fires in response to a user action (for example, when the user selects a menu item or presses a tool button that is linked to this action).</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Target is the currently active object when the action fires.</para>
<method namespace="StdActns" class="TSearchReplace">ExecuteTarget</method> first launches the search-and-replace dialog specified by Dialog. This is a modeless dialog, so the result of the dialog's Execute method simply indicates whether the dialog successfully appeared or was brought into focus. This result is set as the value of the ExecuteResult property, and an OnAccept event occurs if the dialog was brought into focus, or an OnCancel event occurs if the dialog failed to appear.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Finally, <method namespace="StdActns" class="TSearchReplace">ExecuteTarget</method> sets the OnReplace event handler of the search-and-replace dialog to a private method that performs the replacement specified by the dialog.</para>
</comments>
</member>
<member name="P:StdActns.StdActns.Dialog">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Provides access the find-and-replace dialog that the action executes.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <property namespace="StdActns" class="TSearchReplace">Dialog</property> to configure the find-and-replace dialog before the action fires or to close the modeless dialog programmatically. For example, you can set the dialog's options at design time using the Object Inspector or call the dialog's Close<property namespace="StdActns" class="TSearchReplace">Dialog</property> method to shut down the modeless find-and-replace dialog.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">When using a search/replace action, you do not place a TReplace<property namespace="StdActns" class="TSearchReplace">Dialog</property> component on the form or data module at design time. Instead, you add the <property namespace="StdActns" class="TSearchReplace">TSearchReplace</property> action to your action list and then use the <property namespace="StdActns" class="TSearchReplace">Dialog</property> property. The TReplace<property namespace="StdActns" class="TSearchReplace">Dialog</property> component is created by the <property namespace="StdActns" class="TSearchReplace">TSearchReplace</property> constructor.</para>
<class namespace="StdActns">TSearchFindFirst</class> is the standard action for displaying a find dialog that looks for the first occurrence of a string.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Add <class namespace="StdActns">TSearchFindFirst</class> to an action list to add a modeless find dialog to your application. Controls such as menu items and tool buttons linked to this action cause the application to display the find dialog or bring it to the fore.</para>
<class namespace="StdActns">TSearchFindFirst</class> is designed to work with an edit control (TCustomEdit descendant) as a target. It automatically disables itself if the active control in a form is not an edit control.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Search actions represent a modeless dialog. As a result, the OnAccept event occurs not when the user exits the dialog, but when the dialog first appears or comes into focus. When the user directs the dialog to search for a string, <class namespace="StdActns">TSearchFindFirst</class> automatically performs that search, selecting the specified text in the target edit control. Unlike the TSearchFind action, which locates the first occurrence of the search string following the cursor position in the edit control, <class namespace="StdActns">TSearchFindFirst</class> locates the first occurrence of the search string, regardless of the cursor position.</para>
<method namespace="StdActns" class="TSearchFindFirst">Create</method>s and initializes an instance of <method namespace="StdActns" class="TSearchFindFirst">TSearchFindFirst</method>.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Most applications do not need to call the <method namespace="StdActns" class="TSearchFindFirst">TSearchFindFirst</method> constructor because actions are added at design time to an action manager or action list. </para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The <method namespace="StdActns" class="TSearchFindFirst">TSearchFindFirst</method> constructor creates an instance of its associated dialog and assigns that component as the value of the Dialog property. It then assigns the Search method as an event handler for the dialog's OnFind event, so that the action responds automatically when user's direct the dialog to search for a specified text string.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">AOwner specifies the Owner for the action. This is the component that is responsible for freeing the <method namespace="StdActns" class="TSearchFindFirst">TSearchFindFirst</method> instance.</para>
<class namespace="StdActns">TSearchFindNext</class> is the standard action for locating the next instance of a string in an edit control.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Add <class namespace="StdActns">TSearchFindNext</class> to an action list to add the ability to repeat a search initiated by a TSearchFind or TSearchFindFirst action. Controls such as menu items and tool buttons linked to this action cause the application to repeat the search initiated by the TSearchFind action's dialog.</para>
<method namespace="StdActns" class="TSearchFindNext">Create</method>s an instance of <method namespace="StdActns" class="TSearchFindNext">TSearchFindNext</method>.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Most applications do not need to call the <method namespace="StdActns" class="TSearchFindNext">TSearchFindNext</method> constructor because actions are added at design time to an action manager or action list. </para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">AOwner specifies the Owner for the action. This is the component that is responsible for freeing the <method namespace="StdActns" class="TSearchFindNext">TSearchFindNext</method> instance.</para>
</comments>
</member>
<member name="M:StdActns.StdActns.UpdateTarget">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Enables or disables the action, depending on the currently active control in the form.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call the <method namespace="StdActns" class="TSearchFindNext">UpdateTarget</method> method. This method is called automatically when the potential target changes so that actions can update themselves accordingly.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">In <method namespace="StdActns" class="TSearchFindNext">TSearchFindNext</method>, <method namespace="StdActns" class="TSearchFindNext">UpdateTarget</method> ignores the current target object (specified by the Target parameter). Instead, it checks the associated TSearchFind action (the SearchFind property), and sets Enabled to true if the search dialog has already specified a search string. If SearchFind is not set, or if there is no search string in its associated dialog, <method namespace="StdActns" class="TSearchFindNext">UpdateTarget</method> sets Enabled to false.</para>
</comments>
</member>
<member name="P:StdActns.StdActns.SearchFind">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Associates the T<property namespace="StdActns" class="TSearchFindNext">SearchFind</property>Next action with a T<property namespace="StdActns" class="TSearchFindNext">SearchFind</property> action that initiates the search.</para>
<property namespace="StdActns" class="TSearchFindNext">SearchFind</property> is the T<property namespace="StdActns" class="TSearchFindNext">SearchFind</property> action that displays the modeless search dialog whose current search should be repeated. If <property namespace="StdActns" class="TSearchFindNext">SearchFind</property> is not set, then the T<property namespace="StdActns" class="TSearchFindNext">SearchFind</property>Next action remains disabled.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">T<property namespace="StdActns" class="TSearchFindNext">SearchFind</property>Next uses the <property namespace="StdActns" class="TSearchFindNext">SearchFind</property> property to obtain a search string from its associated dialog and to search its associated control.</para>
<class namespace="StdActns">TFontEdit</class> is the standard action for displaying a font selection dialog.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Add <class namespace="StdActns">TFontEdit</class> to an action list to add a modal font selection dialog to your application. Controls such as menu items and tool buttons linked to this action cause the application to display a font dialog when invoked. Use the OnAccept event to respond after the user selects a font in the dialog or the OnCancel event to respond when the user cancels from the dialog. In the event handler, you can read the selected font from the dialog specified by the Dialog property.</para>
</comments>
</member>
<member name="P:StdActns.StdActns.Dialog">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Provides access the font selection dialog that the action executes.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <property namespace="StdActns" class="TFontEdit">Dialog</property> to configure the font selection dialog before the action fires or to read the selected font after the action executes the dialog. For example, you can set the font dialog's target device or limit the available font sizes at design time using the Object Inspector or read the Font property in an OnAccept event handler to make use of the font that the user selects.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">When using a font edit action, you do not place a TFont<property namespace="StdActns" class="TFontEdit">Dialog</property> component on the form or data module at design time. Instead, you add the <property namespace="StdActns" class="TFontEdit">TFontEdit</property> to your action list and then use the <property namespace="StdActns" class="TFontEdit">Dialog</property> property. The font selection dialog component is created by the <property namespace="StdActns" class="TFontEdit">TFontEdit</property> constructor.</para>
<class namespace="StdActns">TColorSelect</class> is the standard action for displaying a color selection dialog.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Add <class namespace="StdActns">TColorSelect</class> to an action list to add a modal color selection dialog to your application. Controls such as menu items and tool buttons linked to this action cause the application to display the color selection dialog when invoked. Use the OnAccept event to respond after the user selects a color using the dialog or the OnCancel event to respond if the user cancels from the dialog. In the event handler for these events, you can read the color from the dialog specified by the Dialog property.</para>
</comments>
</member>
<member name="P:StdActns.StdActns.Dialog">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Provides access the color selection dialog that the action executes.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <property namespace="StdActns" class="TColorSelect">Dialog</property> to configure the color selection dialog before the action fires or to read the selected color after the action executes the dialog. For example, you can set the initially selected color in the dialog at design time using the Object Inspector or read the dialog's Color property in an OnAccept event handler to make use of the selected color.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">When using a color select action, you do not place a TColor<property namespace="StdActns" class="TColorSelect">Dialog</property> component on the form or data module at design time. Instead, you add the <property namespace="StdActns" class="TColorSelect">TColorSelect</property> to your action list and then use the <property namespace="StdActns" class="TColorSelect">Dialog</property> property. The color selection dialog component is created by the <property namespace="StdActns" class="TColorSelect">TColorSelect</property> constructor.</para>
<class namespace="StdActns">TPrintDlg</class> is the standard action for displaying a print dialog.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Add <class namespace="StdActns">TPrintDlg</class> to an action list to add a print dialog to your application. Controls such as menu items and tool buttons linked to this action cause the application to display the print dialog (TPrintDialog) when invoked. Write an OnAccept event handler to perform the actual printing when the user clicks OK. You can read details about the user's selections in the dialog from the Dialog property.</para>
</comments>
</member>
<member name="P:StdActns.StdActns.Dialog">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Provides access the print dialog that the action executes.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">When using a print dialog action, you do not place a TPrint<property namespace="StdActns" class="TPrintDlg">Dialog</property> component on the form or data module at design time. Instead, you add the <property namespace="StdActns" class="TPrintDlg">TPrintDlg</property> action to your action list. If you want to configure the dialog, for example to set the Options that are available to users, you can access the dialog component using the <property namespace="StdActns" class="TPrintDlg">Dialog</property> property. From an OnAccept event handler, use <property namespace="StdActns" class="TPrintDlg">Dialog</property> to read the choices that the user made in the print dialog and then perform the printing based on those choices.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The print dialog component is created by the <property namespace="StdActns" class="TPrintDlg">TPrintDlg</property> constructor.</para>
</comments>
</member>
<member name="T:ImgList.TChangeLink">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The TImageList component uses <class namespace="ImgList">TChangeLink</class> internally to notify other objects when changes are made to the image list. </para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">A TImageList keeps a list of its <class namespace="ImgList">TChangeLink</class> objects. Each is associated with a particular component, such as a tree view or list view control. A component can register its change link with an image list by calling the image list's RegisterChanges method. Before destruction, the component should then call the UnRegisterChanges method.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Component writers can use the change link object to receive notification when changes are made to an image list that a control uses. Use the OnChange event of the change link to execute some code when the image list changes. For example, the tree view control uses a change link object to know when its image list has changed.</para>
</comments>
</member>
<member name="M:ImgList.ImgList.Change">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Generates an On<method namespace="ImgList" class="TChangeLink">Change</method> event.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use the <method namespace="ImgList" class="TChangeLink">Change</method> method to trigger the On<method namespace="ImgList" class="TChangeLink">Change</method> event handler of the change link object.</para>
<method namespace="ImgList" class="TChangeLink">Destroy</method>s the change link object and releases the memory allocated to it.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call <method namespace="ImgList" class="TChangeLink">Destroy</method> directly in an application. Instead, call Free. Free verifies that the change link is not nil before calling <method namespace="ImgList" class="TChangeLink">Destroy</method>.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Before freeing the memory for the change link, <method namespace="ImgList" class="TChangeLink">Destroy</method> first calls the image list's UnRegisterChanges method to unregister itself from receiving notification when the image list changes.</para>
</comments>
</member>
<member name="P:ImgList.ImgList.Sender">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Specifies which image list component notifies the change link object of changes.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <property namespace="ImgList" class="TChangeLink">Sender</property> to access the image list that has changed. The TImageList automatically sets this property when a call to RegisterChanges is made.</para>
</comments>
</member>
<member name="E:ImgList.ImgList.OnChange">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Occurs when there's a change in any of the images stored in the associated image list.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use the <event namespace="ImgList" class="TChangeLink">OnChange</event> event to notify a control when the image list that it's using changes. Specify any special processing to occur at that time in the <event namespace="ImgList" class="TChangeLink">OnChange</event> event handler.</para>
<type namespace="OleAuto">TDrawingStyle</type> describes how to render an image from an image list component. The following table describes the possible values:</condition>
<para>Draws the image blending 25% with the color specified by the BlendColor property. This only affects image lists that contain masks.</para>
</td>
</tr>
<tr>
<td>
<para>dsSelected</para>
</td>
<td>
<para>Draws the image blending 50% with the color specified by the BlendColor property. This only affects image lists that contain masks.</para>
</td>
</tr>
<tr>
<td>
<para>dsNormal</para>
</td>
<td>
<para>Draws the image using the color specified in the BkColor property. If the BkColor is clNone, the image is drawn transparently using the mask.</para>
</td>
</tr>
<tr>
<td>
<para>dsTransparent</para>
</td>
<td>
<para>Draws using the mask regardless of the BkColor setting.</para>
<type namespace="Qt">TImageType</type> indicates whether to use a mask when rendering an image in an image list. It includes the following values:</para>
<type namespace="OleAuto">TResType</type>s is used by the image list methods ResourceLoad, GetResource and FileLoad to specify the type of graphical resource that is to be loaded or retrieved from an image list.</condition>
<type namespace="OleAuto">TLoadResource</type> and <type namespace="OleAuto">TLoadResource</type>s determine how a resource is loaded into an image list.</condition>
<type namespace="OleAuto">TLoadResource</type>s is a set of flags (<type namespace="OleAuto">TLoadResource</type> values) the govern the way an image list loads image resources. The following table lists the possible <type namespace="OleAuto">TLoadResource</type> values:</condition>
<para>Use system metrics for Height and Width if the Width parameter to GetResource is 0. If the Width parameter is 0 and this option is not specified for cursors and icons, the resources width and height will be used.</para>
</td>
</tr>
<tr>
<td>
<para>lrFromFile</para>
</td>
<td>
<para>Loads the resource from a specified file.</para>
</td>
</tr>
<tr>
<td>
<para>lrMap3DColors</para>
</td>
<td>
<para>Replaces the images' gray shades with the 3D windows colors.</para>
</td>
</tr>
<tr>
<td>
<para>lrTransparent</para>
</td>
<td>
<para>Replaces the color table entry for the first pixel of the resource with the default window color (COLOR_WINDOW). This applies only to images with color tables.</para>
</td>
</tr>
<tr>
<td>
<para>lrMonoChrome</para>
</td>
<td>
<para>Loads the resource as black and white.</para>
<class namespace="ImgList">TCustomImageList</class> is the base class for collections of same-sized images, each of which can be referred to by its index. </para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Image lists manage large sets of icons or bitmaps. All images in an image list are contained in a single, wide bitmap in screen device format. An image list may also include a monochrome bitmap that contains masks that are combined with the images to produce a transparent effect such as is common in icons.</para>
<method namespace="ImgList" class="TCustomImageList">Add</method>s an Image and its Mask to the image list object. </para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use the <method namespace="ImgList" class="TCustomImageList">Add</method> method to add images with their masks to an image list. It returns the index of the added image, or -1 if it fails. When the Masked property of the image list is false, the second bitmap is ignored; it can be set to nil (Delphi) or NULL (C++).</para>
</comments>
</member>
<member name="M:ImgList.ImgList.AddIcon">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Adds an icon to the image list object. </para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use the <method namespace="ImgList" class="TCustomImageList">AddIcon</method> method to add the icon specified by the Image parameter to an image list. <method namespace="ImgList" class="TCustomImageList">AddIcon</method> returns the index of the added image, or -1 if it fails.</para>
</comments>
</member>
<member name="M:ImgList.ImgList.AddImage">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Adds single image from another image list.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <method namespace="ImgList" class="TCustomImageList">AddImage</method> to add a single image from another image list. Values specifies the source image list. Index indicates the specific image, where images are numbered from 0.</para>
<method namespace="ImgList" class="TCustomImageList">AddImage</method> returns the new size of the image list.</para>
</comments>
</member>
<member name="M:ImgList.ImgList.AddMasked">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Adds an image to the image list along with a color which is used to generate the transparent mask.</para>
<method namespace="ImgList" class="TCustomImageList">AddMasked</method> is similar to Add except that a mask bitmap is not specified. Instead, a color that can be used to automatically generate the masks is specified. Each pixel of the specified color in the image bitmap is changed to black, and the corresponding bit in the mask is set to one. As a result, any pixel in the image that matches the specified color is transparent when the image is drawn. <method namespace="ImgList" class="TCustomImageList">AddMasked</method> returns -1 if it fails, 0 if it's successful.</para>
</comments>
</member>
<member name="M:ImgList.ImgList.FileLoad">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Loads a resourced image into the image list. </para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use the <method namespace="ImgList" class="TCustomImageList">FileLoad</method> method to load a bitmap, cursor, or icon from a resource file. Use ResType to specify the type of resource. Use Name to identify the resource by name. Use MaskColor to set the transparent color for the images. <method namespace="ImgList" class="TCustomImageList">FileLoad</method> returns true if successful.</para>
<para>Within a package, <method namespace="ImgList" class="TCustomImageList">FileLoad</method> returns an error. GetInstRes must be used to load a resource from within a package.</para>
</note>
</comments>
</member>
<member name="M:ImgList.ImgList.GetBitmap">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Retrieves a specified image as a bitmap.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use the <method namespace="ImgList" class="TCustomImageList">GetBitmap</method> method to obtain a particular image in the image list as a bitmap object. Index denotes the index of the image. <method namespace="ImgList" class="TCustomImageList">GetBitmap</method> assigns the image to the TBitmap object passed in as the Image parameter.</para>
</comments>
</member>
<member name="M:ImgList.ImgList.GetHotSpot">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Returns the hot spot location associated with the current drag image.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use the <method namespace="ImgList" class="TCustomImageList">GetHotSpot</method> method to obtain the position of the hot spot of the current drag image.</para>
</comments>
</member>
<member name="M:ImgList.ImgList.GetImageBitmap">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Returns a handle to a bitmap containing all of the images in the image list.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use the <method namespace="ImgList" class="TCustomImageList">GetImageBitmap</method> method to obtain a Windows handle for the bitmap that contains all images in the image list. <method namespace="ImgList" class="TCustomImageList">GetImageBitmap</method> returns 0 if unsuccessful.</para>
</comments>
</member>
<member name="M:ImgList.ImgList.GetMaskBitmap">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Returns a handle to a bitmap containing all masks for images in the image list.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use the <method namespace="ImgList" class="TCustomImageList">GetMaskBitmap</method> to obtain a bitmap that contains all masks in the image list. <method namespace="ImgList" class="TCustomImageList">GetMaskBitmap</method> returns 0 if unsuccessful.</para>
</comments>
</member>
<member name="M:ImgList.ImgList.GetResource">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Loads the specified bitmap, cursor, or icon resource into the image list.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use the <method namespace="ImgList" class="TCustomImageList">GetResource</method> method to load bitmap, cursor, or icon resource into an image list. </para>
<para>Within a package, <method namespace="ImgList" class="TCustomImageList">GetResource</method> returns an error. GetInstRes must be used to load a resource from within a package.</para>
</note>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">ResType specifies the type of graphical resource that is to be loaded into the image list and can be rtBitmap, rtCursor or rtIcon. </para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Name identifies the resource by name. </para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Width specifies the width, in pixels, of the image.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">LoadFlags specifies how to load the image.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">MaskColor sets the transparent color for the images in the file.</para>
</comments>
</member>
<member name="M:ImgList.ImgList.GetInstRes">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Loads a specified bitmap, cursor, or icon resource into the image list.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use the <method namespace="ImgList" class="TCustomImageList">GetInstRes</method> method to load bitmap, cursor, or icon resource into an image list. </para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Instance is the instance handle of the resource module. </para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">ResType indicates the type of resource (rtBitmap, rtCursor or rtIcon).</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Name or ResID identifies the resource by name or ID, respectively. </para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Width specifies the width, in pixels, of the image.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">LoadFlags specifies how to load the image.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">MaskColor sets the transparent color for the image. </para>
<method namespace="ImgList" class="TCustomImageList">GetInstRes</method> must be used to load a resource from within a package. Within a package, GetResource or FileLoad returns an error.</para>
</note>
</comments>
</member>
<member name="M:ImgList.ImgList.HandleAllocated">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Indicates whether a window handle exists for the image list.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <method namespace="ImgList" class="TCustomImageList">HandleAllocated</method> to determine if a handle exists for the image list. <method namespace="ImgList" class="TCustomImageList">HandleAllocated</method> returns true if the Windows image list has been created and a handle is available, false otherwise. <method namespace="ImgList" class="TCustomImageList">HandleAllocated</method> doesn't create a handle if it doesn't already exist. </para>
<para>Getting the Handle property of creates the Windows image list automatically if it didn't previously exist, and returns the resulting handle. </para>
</note>
</comments>
</member>
<member name="M:ImgList.ImgList.Overlay">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Identifies an image in the list as an image that can be used as an overlay mask.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <method namespace="ImgList" class="TCustomImageList">Overlay</method> to assign an overlay index to one of the images in the list. Once an image has an overlay index, it can be used as an overlay mask. An overlay mask is an image drawn transparently over another image.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">ImageIndex identifies the image that can act as an overlay mask.</para>
<method namespace="ImgList" class="TCustomImageList">Overlay</method> is the overlay index to assign to that image. It must be a value between 0 and 3 (inclusive). Note that this means at most four images can be used as overlay masks.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">To draw an overlay mask over an image use the Draw<method namespace="ImgList" class="TCustomImageList">Overlay</method>methodwith the index of the overlay mask. </para>
</comments>
</member>
<member name="M:ImgList.ImgList.ResourceLoad">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Loads a resource into the image list.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use the <method namespace="ImgList" class="TCustomImageList">ResourceLoad</method> method to load a resource of type TResType into the image list. Use Name to identify the resource. MaskColor is used to create the mask for the resulting image. <method namespace="ImgList" class="TCustomImageList">ResourceLoad</method> returns true if successful, false otherwise.</para>
<para>Within a package, use ResInstLoad instead of <method namespace="ImgList" class="TCustomImageList">ResourceLoad</method>. <method namespace="ImgList" class="TCustomImageList">ResourceLoad</method> returns an error when called from within a package.</para>
</note>
</comments>
</member>
<member name="M:ImgList.ImgList.ResInstLoad">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Loads a resource into the image list.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use the ResoInstLoad method to load a resource of type TResType into the image list. Use Instance to specify the instance handle of the resource module, and Name to identify the resource within that module. MaskColor is used to create the mask for the resulting image. <method namespace="ImgList" class="TCustomImageList">ResInstLoad</method> should be used rather than ResourceLoad to load a resource from within a package.</para>
<method namespace="ImgList" class="TCustomImageList">Create</method>s an empty image list.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Call <method namespace="ImgList" class="TCustomImageList">Create</method> to instantiate an image list at runtime. ImageLists placed on forms or data modules at design time are created automatically. Specify the owner of the new imagelist using the AOwner parameter.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The new image list contains no images and has a default size of 16 by 16 pixels.</para>
</comments>
</member>
<member name="M:ImgList.ImgList.CreateSize">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Creates an empty image list of a specified size.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <method namespace="ImgList" class="TCustomImageList">CreateSize</method> to create an image list object at runtime with an image size other than the default of 16 x 16 pixels. The initial size of the image list is determined by the AHeight and AWidth parameters. The height and width can be altered after the image list has been created using the Width and Height properties.</para>
</comments>
</member>
<member name="M:ImgList.ImgList.AssignTo">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Copies the image list's properties to another image list.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Applications do not call the protected <method namespace="ImgList" class="TCustomImageList">AssignTo</method> method. Instead, call the public Assign method of the destination image list. <method namespace="ImgList" class="TCustomImageList">AssignTo</method> is called when the image list is passed as the Source parameter of another object's Assign method and that Assign method can't copy information to the image list. The object whose Assign method was called is passed as the Dest parameter. <method namespace="ImgList" class="TCustomImageList">AssignTo</method> gives the image list an opportunity to copy properties to objects that were not created with the image list in mind.</para>
</comments>
</member>
<member name="M:ImgList.ImgList.Change">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Generates an On<method namespace="ImgList" class="TCustomImageList">Change</method> event.</para>
<method namespace="ImgList" class="TCustomImageList">Change</method> calls the On<method namespace="ImgList" class="TCustomImageList">Change</method> event handler if it is assigned. Override <method namespace="ImgList" class="TCustomImageList">Change</method> to block this event or provide additional responses to changes in the image list.</para>
<method namespace="ImgList" class="TCustomImageList">DefineProperties</method> allows the image list to create pseudo properties that are loaded and saved with the image list. <method namespace="ImgList" class="TCustomImageList">TCustomImageList</method> overrides the inherited method to save or load the bitmap image in addition to the other published properties.</para>
</comments>
</member>
<member name="M:ImgList.ImgList.DoDraw">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Draws the specified image onto the provided Canvas in the indicated style.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Applications can't call the protected <method namespace="ImgList" class="TCustomImageList">DoDraw</method> method. It provides the underlying implementation of the public Draw method.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Index specifies an image to draw.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Canvas indicates the drawing surface on which the image is rendered.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">X and Y specify the top-left corner of the image on Canvas.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Style encodes how the image blends color or uses a mask (the DrawingStyle and ImageType).</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Enabled indicates whether the image appears as a gray-mapped image. If Enabled is false, <method namespace="ImgList" class="TCustomImageList">DoDraw</method> renders a gray-mapped version of the image.</para>
</comments>
</member>
<member name="M:ImgList.ImgList.GetImages">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Returns a specified image and its mask as bitmaps.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <method namespace="ImgList" class="TCustomImageList">GetImages</method> to obtain the image (and its mask) identified by the Index parameter.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Index specifies the image (and mask) to return, where 0 identifies the first image, 1 the second image, and so on.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Image is a TBitmap object that receives the image of the bitmap.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Mask is a TBitmap object that receives the image of the mask.</para>
<method namespace="ImgList" class="TCustomImageList">Initialize</method> is called from the constructor of the image list. It sets numerous image list properties to their default values and creates instances of helper objects used internally.</para>
</comments>
</member>
<member name="M:ImgList.ImgList.Assign">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Copies the information from one image list to another.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use this method to copy another object's information to the image list.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">If Source is another image list (<method namespace="ImgList" class="TCustomImageList">TCustomImageList</method> descendant), <method namespace="ImgList" class="TCustomImageList">Assign</method> discards any current image information and replaces it with the information from Source. </para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">If Source is nil (Delphi) or NULL (C++), <method namespace="ImgList" class="TCustomImageList">Assign</method> clears the image list.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">If Source is any other type of object, <method namespace="ImgList" class="TCustomImageList">Assign</method> calls its inherited method, which can copy from any source object that implements a way to copy to an image list in its <method namespace="ImgList" class="TCustomImageList">Assign</method>To method.</para>
</comments>
</member>
<member name="M:ImgList.ImgList.AddImages">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Adds all images from another image list.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <method namespace="ImgList" class="TCustomImageList">AddImages</method> to add all the images from another image list. Value specifies the source image list.</para>
<method namespace="ImgList" class="TCustomImageList">Clear</method>s all images from the image list.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use the <method namespace="ImgList" class="TCustomImageList">Clear</method> method to remove all images from the image list. Use the Delete method to delete one image from the image list.</para>
<method namespace="ImgList" class="TCustomImageList">Delete</method>s a particular image from the image list.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use the <method namespace="ImgList" class="TCustomImageList">Delete</method> method to delete an image specified by Index in the image list. Use the Clear method to delete all images in the image list.</para>
<method namespace="ImgList" class="TCustomImageList">Draw</method>s the image specified by the Index parameter onto the provided Canvas. </para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use the <method namespace="ImgList" class="TCustomImageList">Draw</method> method to draw one of the images in the image list onto a specified canvas.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Canvas is the drawing surface on which to render the image.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">X and Y specify the location where the top-left corner should appear on Canvas.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Index indicates which image to draw, where 0 specifies the first image, 1 specifies the second image, and so on.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">A<method namespace="ImgList" class="TCustomImageList">Draw</method>ingStyle indicates how the color of the image may be altered. If this parameter is not specified, <method namespace="ImgList" class="TCustomImageList">Draw</method> uses the value of the <method namespace="ImgList" class="TCustomImageList">Draw</method>ingStyle property.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">AImageType indicates whether to draw the image or its associated mask. If this parameter is not specified, <method namespace="ImgList" class="TCustomImageList">Draw</method> uses the value of the ImageType property.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Enabled indicates whether the image appears as a gray-mapped image. If Enabled is false, <method namespace="ImgList" class="TCustomImageList">Draw</method> renders a gray-mapped version of the image. Because Enabled has a default value of true, this parameter can be omitted if the image should not be grayed.</para>
</comments>
</member>
<member name="M:ImgList.ImgList.DrawOverlay">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Draws an image and an overlay onto the provided Canvas.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">An overlay mask is an image drawn transparently over another image. Any image can be used as an overlay mask. To draw an overlay mask over an image use the <method namespace="ImgList" class="TCustomImageList">DrawOverlay</method> method with the index of the overlay mask. </para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Canvas is the drawing surface on which to draw the overlay.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">X and Y specify the location where the top-left corner should appear on Canvas.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">ImageIndex indicates which image to draw, where 0 specifies the first image, 1 specifies the second image, and so on.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Overlay specifies the index of the overlay mask to use. This index is assigned to the image that is used as an overlay mask by calling the Overlay method.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">ADrawingStyle indicates how the color of the image may be altered. If this parameter is not specified, Draw uses the value of the DrawingStyle property.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">AImageType indicates whether to draw the image or its associated mask. If this parameter is not specified, Draw uses the value of the ImageType property.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Enabled indicates whether the image appears as a gray-mapped image. If Enabled is false, DoDraw renders a gray-mapped version of the image. Because Enabled has a default value of true, this parameter can be omitted if the image should not be grayed.</para>
</comments>
</member>
<member name="M:ImgList.ImgList.GetIcon">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Returns the image specified by Index as an icon into the Image parameter.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Call <method namespace="ImgList" class="TCustomImageList">GetIcon</method> to obtain a particular image in the image list as an icon.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Index identifies the desired image, where 0 specifies the first image, 1 specifies the second image, and so on.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Image is a TIcon object that receives the new image.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">ADrawingStyle specifies the amount of color that is blended with the image to achieve various affects. When <method namespace="ImgList" class="TCustomImageList">GetIcon</method> is called using the version that does not take an ADrawingStyle parameter, it uses the value of the DrawingStyle property.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">AImageType specifies whether the image is rendered using a mask. When <method namespace="ImgList" class="TCustomImageList">GetIcon</method> is called using the version that does not take an AImageType parameter, it uses the value of the ImageType property.</para>
<method namespace="ImgList" class="TCustomImageList">Insert</method>s a bitmap and its mask into the image list following a specified image.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use the <method namespace="ImgList" class="TCustomImageList">Insert</method> method to insert a bitmap and its mask into the image list. The image is inserted following the image specified by Index.</para>
</comments>
</member>
<member name="M:ImgList.ImgList.InsertIcon">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Inserts an icon at a specified position in the image list.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use the <method namespace="ImgList" class="TCustomImageList">InsertIcon</method> method to insert an icon into the image list. The icon is inserted following the image specified by Index.</para>
</comments>
</member>
<member name="M:ImgList.ImgList.InsertMasked">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Inserts a bitmap at a specified position, creating the mask from a specified transparent color.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use the <method namespace="ImgList" class="TCustomImageList">InsertMasked</method> method to insert a masked image into the image list. The new image is inserted following the image specified by Index. Use MaskColor to identify the color in the image used to generate the Mask.</para>
<method namespace="ImgList" class="TCustomImageList">Move</method>s a specified image to another position.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use the <method namespace="ImgList" class="TCustomImageList">Move</method> method to move an image to another position in the image list. Specify the current position using CurIndex, and the new position using NewIndex.</para>
</comments>
</member>
<member name="M:ImgList.ImgList.RegisterChanges">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Registers an object to be notified when changes occur in the image list. </para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use the <method namespace="ImgList" class="TCustomImageList">RegisterChanges</method> method to have an object notified whenever changes occur in the image list. The TChangeLink's OnChange event is called whenever a change in the image list occurs.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Create a change link object for each object that should be notified of changes. Register each object by calling <method namespace="ImgList" class="TCustomImageList">RegisterChanges</method> and passing its change link object as the Value parameter. The OnChange event of all registered change link objects is then triggered when a change occurs in the image list. Any code assigned to the OnChange event handlers will execute.</para>
<method namespace="ImgList" class="TCustomImageList">Replace</method>s an image in the image list with a new image and mask.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use the <method namespace="ImgList" class="TCustomImageList">Replace</method> method to replace the image at the Index position in the image list with a new Image and overlay Mask. </para>
</comments>
</member>
<member name="M:ImgList.ImgList.ReplaceIcon">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Replaces an image in the image list with an icon.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use the <method namespace="ImgList" class="TCustomImageList">ReplaceIcon</method> method to replace the Image at the Index position in the image list with a new icon.</para>
</comments>
</member>
<member name="M:ImgList.ImgList.ReplaceMasked">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Replaces an image in the image list with a new image and automatically-generated mask.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use the <method namespace="ImgList" class="TCustomImageList">ReplaceMasked</method> method to replace the image at Index position within the image list specified by NewImage and the mask generated from NewImage by masking out all pixels of the color specified by MaskColor.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Removes an object from the list of objects to be notified when the image list changes.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use the <method namespace="ImgList" class="TCustomImageList">UnRegisterChanges</method> method to unregister a TChangeLink object. The object will no longer receive notification when the image list changes.</para>
<method namespace="ImgList" class="TCustomImageList">Destroy</method> first calls UnRegisterChanges to unregister any objects registered to receive notification when the image list changed, and frees all helper objects associated with the image list.</para>
<method namespace="ImgList" class="TCustomImageList">Destroy</method> seldom needs to be called. However, when an image list is constructed without an owner by the Create or CreateSize method, call Free to release memory and dispose of the object. Free checks to see if the pointer is nil before calling <method namespace="ImgList" class="TCustomImageList">Destroy</method>.</para>
</comments>
</member>
<member name="P:ImgList.ImgList.Count">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Indicates the number of images in the image list.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <property namespace="ImgList" class="TCustomImageList">Count</property> when iterating through the images in the image list. Retrieve the individual images using the GetBitmap method. Draw individual images using the Draw method.</para>
</comments>
</member>
<member name="P:ImgList.ImgList.Handle">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Designates the handle for the image list.</para>
<property namespace="ImgList" class="TCustomImageList">Handle</property> is the Windows image list object handle. Use this handle when calling Windows API functions that require it.</para>
</comments>
</member>
<member name="P:ImgList.ImgList.AllocBy">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Sets the number of images by which the image list grows when it needs to make room for new images.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use the <property namespace="ImgList" class="TCustomImageList">AllocBy</property> method to specify the number of new images that can be added to the resized image list.</para>
</comments>
</member>
<member name="P:ImgList.ImgList.BlendColor">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Determines which foreground color to use when drawing an image.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Set <property namespace="ImgList" class="TCustomImageList">BlendColor</property> to cause the images in the list to be combined with the specified color when the DrawingStyle is dsFocus or dsSelected. More of <property namespace="ImgList" class="TCustomImageList">BlendColor</property> is combined with the images when DrawingStyle is dsSelected. clNone specifies no blend color while clDefault specifies the system highlight .</para>
</comments>
</member>
<member name="P:ImgList.ImgList.BkColor">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Determines which background color to use when drawing an image.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <property namespace="ImgList" class="TCustomImageList">BkColor</property> to specify the color used for the masked regions of the images in the list. When <property namespace="ImgList" class="TCustomImageList">BkColor</property> is clNone, the image is drawn transparently using the mask to define the transparent areas. Otherwise, the value of <property namespace="ImgList" class="TCustomImageList">BkColor</property> appears in the masked out portions.</para>
<property namespace="ImgList" class="TCustomImageList">BkColor</property> has no effect when the Masked property is false.</para>
</note>
</comments>
</member>
<member name="P:ImgList.ImgList.DrawingStyle">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Specifies the style to be used when the image list is drawing an image. </para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use the <property namespace="ImgList" class="TCustomImageList">DrawingStyle</property> property to control how the image is to appear. <property namespace="ImgList" class="TCustomImageList">DrawingStyle</property> controls how much of the blend color specified by BlendColor is combined with the foreground, or what background color to use. </para>
</comments>
</member>
<member name="P:ImgList.ImgList.Height">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Specifies the height of images within the image list.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use the <property namespace="ImgList" class="TCustomImageList">Height</property> property to specify the height of images before any are added to the image list. The image list is cleared when this value changes.</para>
</comments>
</member>
<member name="P:ImgList.ImgList.ImageType">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Determines whether the image list uses the associated mask when drawing.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use the <property namespace="ImgList" class="TCustomImageList">ImageType</property> property to control whether the images are drawn using the image mask (itMask), or without the mask (itImage).</para>
</comments>
</member>
<member name="P:ImgList.ImgList.Masked">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Specifies whether the image list includes masks that can be combined with the images.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Set the <property namespace="ImgList" class="TCustomImageList">Masked</property> property to true to combine the images with masks. The masked portion of the bitmap is drawn transparently, or replaced by the color specified by the BkColor property.</para>
<property namespace="ImgList" class="TCustomImageList">Masked</property> indicates whether the image list stores masks to combine with the images. To use those masks, the ImageType property indicates whether to draw the image or the mask.</para>
</comments>
</member>
<member name="P:ImgList.ImgList.ShareImages">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Specifies whether the image list destroys its handle when the image list is destroyed.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Set the <property namespace="ImgList" class="TCustomImageList">ShareImages</property> property to false to ensure that the handle to the image list is freed when the image list is destroyed.</para>
</comments>
</member>
<member name="P:ImgList.ImgList.Width">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Specifies the width of all images within the image list.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use the <property namespace="ImgList" class="TCustomImageList">Width</property> property to specify the width of images before any are added to the image list. The image list is cleared when this value changes.</para>
</comments>
</member>
<member name="E:ImgList.ImgList.OnChange">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Occurs when the image list changes.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Write an <event namespace="ImgList" class="TCustomImageList">OnChange</event> event handler to execute code when the image list changes. Any objects registered with the RegisterChanges method will also be notified.</para>
<class namespace="ActnList">TContainedAction</class> is the base class for actions that can be grouped by category and that can appear in action lists<condition os="Windows"> or action managers</condition>.</para>
<class namespace="ActnList">TContainedAction</class> introduces properties and methods that enable actions to appear in an action list<condition os="Windows"> or action manager</condition>. The properties of <class namespace="ActnList">TContainedAction</class> contain information about the relationship between the action and its action list<condition os="Windows"> or action manager</condition>. Methods of <class namespace="ActnList">TContainedAction</class> override those of the base class to take into account the action list<condition os="Windows"> or action manager</condition> that owns the action. </para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Objects of type <class namespace="ActnList">TContainedAction</class> can be associated with a category of action types. This category is used at design time, to organize the actions in an action list<condition os="Windows"> or action manager, and at runtime to organize them in the customize dialog</condition>.</para>
</comments>
</member>
<member name="M:ActnList.ActnList.Execute">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Responds when the client control "fires".</para>
<method namespace="ActnList" class="TContainedAction">Execute</method> is called automatically when a client control "fires" (for example, when the user clicks a button or selects a menu item). It returns true if an event handler is found to handle the action, false otherwise.</para>
<method namespace="ActnList" class="TContainedAction">Execute</method> first attempts to handle the action by generating an On<method namespace="ActnList" class="TContainedAction">Execute</method> event on the action list that contains this action (if the action belongs to an action list). If the action list's On<method namespace="ActnList" class="TContainedAction">Execute</method> event handler does not handle the action, <method namespace="ActnList" class="TContainedAction">Execute</method> generates an OnAction<method namespace="ActnList" class="TContainedAction">Execute</method> event on the application itself. If neither the action list nor the application handles the action in response to these events, <method namespace="ActnList" class="TContainedAction">Execute</method> generates an On<method namespace="ActnList" class="TContainedAction">Execute</method> event on itself. If this action has no On<method namespace="ActnList" class="TContainedAction">Execute</method> event handler, it instructs the application to locate the current target control and call the <method namespace="ActnList" class="TContainedAction">Execute</method>Target method, which is the mechanism by which predefined action classes perform their function.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Returns the action list <condition os="Windows">or action manager </condition>that contains the action.</para>
<method namespace="ActnList" class="TContainedAction">GetParentComponent</method> is called by the streaming system that loads and saves components. It ensures that objects are loaded and saved with their parent objects. <method namespace="ActnList" class="TContainedAction">TContainedAction</method> overrides the inherited method to identify the associated action list <condition os="Windows">or action manager </condition>as the action's parent.</para>
</comments>
</member>
<member name="M:ActnList.ActnList.HasParent">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Indicates whether the action is contained in an action list<condition os="Windows"> or action manager</condition>.</para>
<method namespace="ActnList" class="TContainedAction">HasParent</method> is called by the streaming system that loads and saves components. It ensures that objects are loaded and saved with their parent objects. <method namespace="ActnList" class="TContainedAction">TContainedAction</method> overrides the inherited method to return true if the action is contained in an action list<condition os="Windows"> or action manager</condition>.</para>
</comments>
</member>
<member name="M:ActnList.ActnList.Update">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Indicates whether the action updates itself.</para>
<method namespace="ActnList" class="TContainedAction">Update</method> is called automatically when the application is idle to give the action a chance to update itself according to current conditions. It returns true if an event handler is found to update the action, false otherwise.</para>
<method namespace="ActnList" class="TContainedAction">Update</method> first attempts to update the action by generating an On<method namespace="ActnList" class="TContainedAction">Update</method> event on the action list that contains this action (if the action belongs to an action list). If the action list's On<method namespace="ActnList" class="TContainedAction">Update</method> event handler does not update the action, <method namespace="ActnList" class="TContainedAction">Update</method> generates an OnAction<method namespace="ActnList" class="TContainedAction">Update</method> event on the application itself. If neither the action list nor the application updates the action in response to these events, <method namespace="ActnList" class="TContainedAction">Update</method> generates an On<method namespace="ActnList" class="TContainedAction">Update</method> event on itself. If this action has no On<method namespace="ActnList" class="TContainedAction">Update</method> event handler, it instructs the application to locate the current target control and call the <method namespace="ActnList" class="TContainedAction">Update</method>Target method, which is the mechanism by which predefined action classes update themselves.</para>
<method namespace="ActnList" class="TContainedAction">Destroy</method>s the instance of the contained action.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">If the action is contained in an action list<condition os="Windows"> or action manager</condition>, <method namespace="ActnList" class="TContainedAction">Destroy</method> removes the action from that list. Then it calls the inherited <method namespace="ActnList" class="TContainedAction">Destroy</method>.</para>
</comments>
</member>
<member name="P:ActnList.ActnList.ActionList">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Indicates the action list<condition os="Windows"> or action manager</condition> that contains the action.</para>
<property namespace="ActnList" class="TContainedAction">ActionList</property> indicates which action list<condition os="Windows"> or action manager</condition> contains the action. Only contained actions (instances of <property namespace="ActnList" class="TContainedAction">TContainedAction</property> or its descendants) can appear in an action list<condition os="Windows"> or action manager</condition>. An action list provides a visual interface for working with actions, which are then available to be associated with client controls in the application.<condition os="Windows"> An action manager uses the actions as an abstract representation of user interface elements, which it generates dynamically at runtime.</condition>
</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">When creating an action dynamically at runtime, set the <property namespace="ActnList" class="TContainedAction">ActionList</property> property to add the action to an action list<condition os="Windows"> or action manager</condition>.</para>
</comments>
</member>
<member name="P:ActnList.ActnList.Index">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Specifies the index of the action in its action list<condition os="Windows"> or action manager</condition>.</para>
<property namespace="ActnList" class="TContainedAction">Index</property> indicates the position of the action in its action list<condition os="Windows"> or action manager</condition>. You can change an action's <property namespace="ActnList" class="TContainedAction">Index</property> at design time by dragging it to a new position in the action list editor<condition os="Windows"> or customize dialog</condition>.</para>
<condition os="Windows">The index of actions in an action manager determines the order in which they appear in user interface elements such as menus and tool bars.</condition>
</para>
</comments>
</member>
<member name="P:ActnList.ActnList.Category">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Specifies the category under which the action appears in its action list<condition os="Windows"> or action manager</condition>.</para>
<property namespace="ActnList" class="TContainedAction">Category</property> is the group, or category, to which the action belongs. An <condition os="Windows">action manager or </condition>action list displays its actions grouped by category.<condition os="Windows"> In addition, action bars associated with an action manager can generate user interface elements that correspond to action categories.</condition>
</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Action categories group actions by similarities, usually of behavior or functionality. At design-time you can modify or set the <property namespace="ActnList" class="TContainedAction">Category</property> for an action by selecting the action from the action list<condition os="Windows"> or object tree view</condition>, and choosing <property namespace="ActnList" class="TContainedAction">Category</property> in the Object Inspector.</para>
<class namespace="ActnList">TCustomActionList</class> is the base class for action list objects that manage a set of actions.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Action lists manage a collection of action objects so that they are available to the components in an application. These action objects centralize the response of the application to user input, and update the properties of all controls that trigger that response.</para>
<class namespace="ActnList">TCustomActionList</class> descendants provide the user interface for working with actions at design time. <condition os="Windows">These include TActionList, which lets you set up actions using the action list editor, and TActionManager, which lets you configure actions using the customize dialog.</condition>
</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Action lists maintain a list of actions that can be grouped by category. Actions in an action list are TContainedAction or descendant types.</para>
</comments>
</member>
<member name="M:ActnList.ActnList.ExecuteAction">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Generates an OnExecute event.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Typically, applications do not call the <method namespace="ActnList" class="TCustomActionList">ExecuteAction</method> method. Instead, the action indicated by the Action parameter calls <method namespace="ActnList" class="TCustomActionList">ExecuteAction</method> in response to a user command. It is possible, however, to call <method namespace="ActnList" class="TCustomActionList">ExecuteAction</method> to generate an OnExecute event even though no client control has been triggered.</para>
<method namespace="ActnList" class="TCustomActionList">ExecuteAction</method> invokes the OnExecute event handler for the action list. It returns true if the event handler handles the action, false otherwise.</para>
</comments>
</member>
<member name="M:ActnList.ActnList.UpdateAction">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Generates an OnUpdate event.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Typically, applications do not call the <method namespace="ActnList" class="TCustomActionList">UpdateAction</method> method. Instead, the action indicated by the Action parameter calls <method namespace="ActnList" class="TCustomActionList">UpdateAction</method> when informed by the application that it can update itself. It is possible, however, to call <method namespace="ActnList" class="TCustomActionList">UpdateAction</method> to generate an OnUpdate event even though this has not been initiated by the application.</para>
<method namespace="ActnList" class="TCustomActionList">UpdateAction</method> invokes the OnUpdate event handler for the action list. It returns true if the event handler updates the action, false otherwise.</para>
<method namespace="ActnList" class="TCustomActionList">Create</method>s and initializes a <method namespace="ActnList" class="TCustomActionList">TCustomActionList</method> object.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Call <method namespace="ActnList" class="TCustomActionList">Create</method> to instantiate an action list at runtime. Action lists added to forms at design time are created automatically.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The AOwner parameter is the owner of the action list, typically this is a form or data module.</para>
</comments>
</member>
<member name="M:ActnList.ActnList.RemoveAction">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Removes an action from the list.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Applications can't call this protected method. <method namespace="ActnList" class="TCustomActionList">RemoveAction</method> is used internally to remove an action from the Actions property array. <method namespace="ActnList" class="TCustomActionList">RemoveAction</method> removes the action and sets its ActionList property to nil (Delphi) or NULL (C++).</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">To remove an action from an action list, change the action's ActionList property.</para>
</comments>
</member>
<member name="M:ActnList.ActnList.Change">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Generates an On<method namespace="ActnList" class="TCustomActionList">Change</method> event.</para>
<method namespace="ActnList" class="TCustomActionList">Change</method> is called when a change, such as a modification to the categories of the actions in the list, occurs in the action list.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">1. Invokes an On<method namespace="ActnList" class="TCustomActionList">Change</method> handler, if one has been assigned.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">2. Informs all actions in the list that something has changed so that they can update themselves.</para>
</comments>
</member>
<member name="M:ActnList.ActnList.GetChildren">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Calls a specified method for each child action of the action list.</para>
<method namespace="ActnList" class="TCustomActionList">GetChildren</method> is used by the component streaming system. For each action in the action list, <method namespace="ActnList" class="TCustomActionList">GetChildren</method> calls the method passed in Proc. The actions are passed to the callback in the order that they are loaded or saved by the component streaming system.</para>
</comments>
</member>
<member name="M:ActnList.ActnList.Notification">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Responds to notifications when objects are created or destroyed.</para>
<method namespace="ActnList" class="TCustomActionList">Notification</method> notifies the action list that the component specified by AComponent is about to be inserted or removed, as specified by Operation. By default, components pass along the notification to their owned components, if any.</para>
<method namespace="ActnList" class="TCustomActionList">TCustomActionList</method> overrides <method namespace="ActnList" class="TCustomActionList">Notification</method> to update the Images property when images from the list are destroyed and the Actions property when actions in the list are destroyed.</para>
</comments>
</member>
<member name="M:ActnList.ActnList.SetChildOrder">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Sets the order that actions are passed to a callback by the GetChildren method.</para>
<method namespace="ActnList" class="TCustomActionList">SetChildOrder</method> specifies the order in which the component streaming system loads and saves the action components owned by this action list. It ensures that the actions are loaded and saved in the same order that they appear in the Actions property array. You should not need to call this method directly.</para>
</comments>
</member>
<member name="M:ActnList.ActnList.Destroy">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Disposes of the instance of an action list object.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">You normally do not need to call the destructor for an action list if it has an owner. The action list is destroyed automatically by its owner, which was passed to its constructor when it was created. In situations where the custom action list object needs to be manually destroyed, do so by calling its Free method.</para>
</comments>
</member>
<member name="P:ActnList.ActnList.Actions">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Lists the actions maintained by the action list.</para>
<property namespace="ActnList" class="TCustomActionList">Actions</property> is an indexed property containing a list of the actions in the action list component.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Index identifies the action by index, where 0 is the index of the first action, 1 is the index of the second action, and so on. The upper limit for Index is given by the ActionCount property.</para>
</comments>
</member>
<member name="P:ActnList.ActnList.ActionCount">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Indicates the number of actions in the action list.</para>
<property namespace="ActnList" class="TCustomActionList">Images</property> is a list of bitmaps that can be displayed to the left of any action in the action list. An action is associated with an image from this image list by its ImageIndex property. This image can then appear on client controls such as menu items, tool buttons, and so on.</para>
<condition os="Windows">Use <property namespace="ActnList" class="TCustomActionList">State</property> to turn an action list on or off. <property namespace="ActnList" class="TCustomActionList">State</property> can have any of the following values:</condition>
<para>Actions perform their normal response when triggered by client objects or hotkeys.</para>
</td>
</tr>
<tr>
<td>
<para>asSuspended</para>
</td>
<td>
<para>The actions in the action list do not respond when client objects tell them to "fire". The Enabled property for all actions in the list is unchanged.</para>
</td>
</tr>
<tr>
<td>
<para>asSuspendedEnabled</para>
</td>
<td>
<para>The actions in the action list do not respond when client objects tell them to "fire". The Enabled property for all actions in the list is set to true. Used for designing ActionBars.</para>
</td>
</tr>
</table>
</comments>
</member>
<member name="E:ActnList.ActnList.OnChange">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Occurs when a change occurs in the action list.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Write an <event namespace="ActnList" class="TCustomActionList">OnChange</event> event handler to update your application in response to changes in the action list. Changes to the action list that trigger an <event namespace="ActnList" class="TCustomActionList">OnChange</event> event include changes to an action category or to the action list's image list.</para>
<para>The action list automatically informs the actions in the list when an <event namespace="ActnList" class="TCustomActionList">OnChange</event> event occurs. You need only provide an <event namespace="ActnList" class="TCustomActionList">OnChange</event> event handler for application-specific responses.</para>
</note>
</comments>
</member>
<member name="E:ActnList.ActnList.OnUpdate">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Occurs when the application is idle so that the action list can update a specific action in the list.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Write an <event namespace="ActnList" class="TCustomActionList">OnUpdate</event> event handler to configure the properties of a specified action in the list so that it reflects current conditions.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">When the application is idle, it cycles through every action in turn giving it a chance to update itself to reflect current conditions. For each action, the first event to occur in this sequence is the action list's <event namespace="ActnList" class="TCustomActionList">OnUpdate</event> event. If the <event namespace="ActnList" class="TCustomActionList">OnUpdate</event> event handler sets its Handled parameter to true, the action is considered updated, and processing stops there. This blocks the execution of any other event handlers or any built-in response by a predefined action class.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">If the <event namespace="ActnList" class="TCustomActionList">OnUpdate</event> event handler does not set its Handled parameter to true, the application's OnActionUpdate event occurs next. If the OnActionUpdate event does not update the action, the action object's <event namespace="ActnList" class="TCustomActionList">OnUpdate</event> event occurs. Finally, if the action does not have an <event namespace="ActnList" class="TCustomActionList">OnUpdate</event> event handler, the application executes any predefined update method implemented by the action object.</para>
</comments>
</member>
<member name="E:ActnList.ActnList.OnStateChange">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Occurs after an OnChange event.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Write an <event namespace="ActnList" class="TCustomActionList">OnStateChange</event> event handler to respond after the OnChange event occurs.</para>
<class namespace="ActnList">TActionList</class> maintains a list of actions that can be used by components and controls, such as menu items and buttons.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use Action lists to centralize the response to user commands (actions). Action list components maintain a list of actions that are available to the client controls in an application. Add action list components to your form or data module from the standard page of the component palette. Double-click the action list to display the action list editor, from which you can add, delete, and rearrange actions.</para>
<class namespace="ActnList">TActionList</class> is intended primarily for managing the actions in cross-platform applications. While it is always possible to maintain the actions for an application using <class namespace="ActnList">TActionList</class>, it can be simpler to use an action manager instead.</condition>
<class namespace="ActnList">TShortCutList</class> is a specialized list for storing TShortCut values. <class namespace="ActnList">TShortCutList</class> is the type of the SecondaryShortCuts property.</para>
<class namespace="ActnList">TShortCutList</class> is a descendant of TStringList, which manages a collection of strings. As such, <class namespace="ActnList">TShortCutList</class> adds, deletes, and searches for shortcuts using their text representation. (You can convert between a shortcut and its text representation using the TextToShortCut and SHortCutToText functions). <class namespace="ActnList">TShortCutList</class> stores the shortcut that corresponds to a text representation as the value of the Objects property for that string. Do not change the value of the Objects property, or the short cut list will not operate correctly.</para>
<method namespace="ActnList" class="TShortCutList">Add</method>s a new shortcut to the list.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Call <method namespace="ActnList" class="TShortCutList">Add</method> to add a shortcut to the list. If the list is sorted, the shortcut is added to the appropriate position in the sort order. If the list is not sorted, the shortcut is added to the end of the list. <method namespace="ActnList" class="TShortCutList">Add</method> returns the position of the shortcut in the list, where the first item in the list has a value of 0.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">S is the string representation of the shortcut to add. You can obtain this from a shortcut using the global ShortCutToText function. <method namespace="ActnList" class="TShortCutList">TShortCutList</method> saves the string S as a new string in the list and the corresponding shortcut as an Object associated with that string.</para>
<para>For sorted lists, <method namespace="ActnList" class="TShortCutList">Add</method> raises an EListError exception if the string S already appears in the list and Duplicates is set to dupError. If Duplicates is set to dupIgnore, trying to add a duplicate string to a sorted list does nothing.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Returns the position of a shortcut in the list.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Call <method namespace="ActnList" class="TShortCutList">IndexOfShortCut</method> to locate a shortcut in the list. <method namespace="ActnList" class="TShortCutList">IndexOfShortCut</method> returns the position of the first occurrence of Shortcut in the list, where 0 is the position of the first shortcut, 1 is the position of the second shortcut, and so on. If the shortcut does not appear in the list, <method namespace="ActnList" class="TShortCutList">IndexOfShortCut</method> returns ΓÇô1.</para>
<para>To locate a shortcut based on its string representation rather than the shortcut value, use the Find or IndexOf method instead.</para>
</note>
</comments>
</member>
<member name="P:ActnList.ActnList.ShortCuts">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Lists the shortcuts in the list.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <property namespace="ActnList" class="TShortCutList">ShortCuts</property> to access the shortcuts in the list by position. The Index parameter indicates the index of the shortcut, where 0 is the index of the first shortcut, 1 is the index of the second shortcut, and so on.</para>
<property namespace="ActnList" class="TShortCutList">ShortCuts</property> is the same as the Objects property, except that the value is given as a TShortCut value instead of as a reference to an object instance. </para>
<property namespace="ActnList" class="TShortCutList">ShortCuts</property> is a read-only property. To add or delete shortcuts in the list, use the Add and Delete methods. To locate a specific shortcut in the list, use the IndexOfShortCut method.</para>
<class namespace="ActnList">TCustomAction</class> introduces support for the properties and methods of menu items and controls that are linked to action objects. Use <class namespace="ActnList">TCustomAction</class> as a base class when deriving your own actions that publish specific properties of associated controls. CLX provides a generic descendant class that publishes all of the properties of <class namespace="ActnList">TCustomAction</class> as well as specialized action classes for operating on components as datasets or text controls.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Action objects centralize the response to user commands (actions)<condition os="Windows"> and represent user interface elements in applications that use action bars</condition>. They provide an easy way to synchronize, for example, the enabled state and caption of a speed button and a menu item, and handle the response when users click on these components. Each such component, called the client, has its properties dynamically updated by the action and forwards user actions to the action for a response. </para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">You can work with actions at design-time in the action list editor of an action list<condition os="Windows"> or the customize dialog of an action manager</condition>. The action list <condition os="Windows">or action manager </condition>is a container for actions, which it organizes into categories.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Component and control properties and events that are supported in <class namespace="ActnList">TCustomAction</class>, either directly or through an ancestor, are:</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Executes the action when the user types on of its short cuts.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Applications can't call the protected <method namespace="ActnList" class="TCustomAction">HandleShortCut</method> method. The action list's IsShortCut method calls <method namespace="ActnList" class="TCustomAction">HandleShortCut</method> when it finds a match between a shortcut key combination and the action's ShortCut <condition os="Windows">or SecondaryShortCuts </condition>property.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">As implemented in <method namespace="ActnList" class="TCustomAction">TCustomAction</method>, <method namespace="ActnList" class="TCustomAction">HandleShortCut</method> calls Execute to cause the action to perform its function. <method namespace="ActnList" class="TCustomAction">HandleShortCut</method> returns the value that Execute returns. </para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Descendant classes can override <method namespace="ActnList" class="TCustomAction">HandleShortCut</method> to respond in other ways when the user types the action's shortcut keys.</para>
</comments>
</member>
<member name="M:ActnList.ActnList.DoHint">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Generates an OnHint event.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Typically, Applications do not call the <method namespace="ActnList" class="TCustomAction">DoHint</method> method. It is called automatically when the user pauses the mouse over one of the action's client controls or menu items.</para>
<method namespace="ActnList" class="TCustomAction">DoHint</method> checks for an OnHint event handler and passes HintStr to it, if the handler exists. <method namespace="ActnList" class="TCustomAction">DoHint</method> returns true if no event handler is assigned or if the OnHint event handler indicates that the hint should be displayed using the default popup window.</para>
</comments>
</member>
<member name="M:ActnList.ActnList.Execute">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Responds when a client control "fires".</para>
<method namespace="ActnList" class="TCustomAction">Execute</method> is called automatically when a client control "fires" (for example, when the user clicks a button or selects a menu item). It returns true if an event handler is found to handle the action, false if there was no event handler or if the action was not enabled.</para>
<method namespace="ActnList" class="TCustomAction">Execute</method> first ensures that the action is updated. Then, if the Enabled property is true, it attempts to handle the action by generating an On<method namespace="ActnList" class="TCustomAction">Execute</method> event on the action list that contains this action (if the action belongs to an action list). If the action list's On<method namespace="ActnList" class="TCustomAction">Execute</method> event handler does not handle the action, <method namespace="ActnList" class="TCustomAction">Execute</method> generates an OnAction<method namespace="ActnList" class="TCustomAction">Execute</method> event on the application itself. If neither the action list nor the application handles the action in response to these events, <method namespace="ActnList" class="TCustomAction">Execute</method> generates an On<method namespace="ActnList" class="TCustomAction">Execute</method> event on itself. If this action has no On<method namespace="ActnList" class="TCustomAction">Execute</method> event handler, <method namespace="ActnList" class="TCustomAction">Execute</method> instructs the application to locate the current target control and call the <method namespace="ActnList" class="TCustomAction">Execute</method>Target method, which is the mechanism by which predefined action classes perform their function.</para>
</comments>
</member>
<member name="M:ActnList.ActnList.Create">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Instantiates and initializes a <method namespace="ActnList" class="TCustomAction">TCustomAction</method> object.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Applications do not need to call the constructor directly. Actions are created automatically when you add them to an <condition os="Windows">action manager or </condition>action list component at design time. If you want to create an action at runtime, assign a TActionList <condition os="Windows">or TActionManager </condition>component to its ActionList property after calling <method namespace="ActnList" class="TCustomAction">Create</method>.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">AOwner is the component that is responsible for freeing the action. It becomes the value of the Owner property.</para>
</comments>
</member>
<member name="M:ActnList.ActnList.AssignTo">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Copies the properties of this action to a destination object.</para>
<method namespace="ActnList" class="TCustomAction">AssignTo</method> is overridden so that existing objects of type <method namespace="ActnList" class="TCustomAction">TCustomAction</method> can be copied to other action objects of the same type. <method namespace="ActnList" class="TCustomAction">AssignTo</method> ensures the correct assignment of property values.</para>
</comments>
</member>
<member name="M:ActnList.ActnList.SetName">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Sets the value of the Name property.</para>
<method namespace="ActnList" class="TCustomAction">SetName</method> is the protected write implementation of the Name property. It calls the ChangeName method, which performs the actual name change. <method namespace="ActnList" class="TCustomAction">TCustomAction</method> overrides <method namespace="ActnList" class="TCustomAction">SetName</method> so that it also changes the Caption property if Caption is the same as Name.</para>
</comments>
</member>
<member name="M:ActnList.ActnList.Destroy">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Frees an instance of <method namespace="ActnList" class="TCustomAction">TCustomAction</method>.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call the destructor directly in an application. Instead, call Free. Free ensures that the action is not nil before calling the destructor.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">If the action is contained in an action list<condition os="Windows"> or action manager</condition>, <method namespace="ActnList" class="TCustomAction">Destroy</method> removes the action from that list.</para>
<property namespace="ActnList" class="TCustomAction">TCustomAction</property> uses <property namespace="ActnList" class="TCustomAction">SavedEnabledState</property> internally to save the value of the Enabled property when its action list has a state of asSuspendedEnabled.</condition>
<property namespace="ActnList" class="TCustomAction">AutoCheck</property> causes the checked property to toggle when the action executes. This allows the action's Checked property to remain in sync with the client's Checked property (or equivalent). If the client is a menu item (where the Checked property does not necessarily toggle), <property namespace="ActnList" class="TCustomAction">AutoCheck</property> is propagated to the <property namespace="ActnList" class="TCustomAction">AutoCheck</property> property of the menu item.</condition>
</para>
</comments>
</member>
<member name="P:ActnList.ActnList.Caption">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Represents the caption of client controls and menu items.</para>
<property namespace="ActnList" class="TCustomAction">Caption</property> holds the string that is the caption for the action when it is set. The value of <property namespace="ActnList" class="TCustomAction">Caption</property> is propagated to client controls and menu items. </para>
</comments>
</member>
<member name="P:ActnList.ActnList.Checked">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Indicates whether client controls and menu items appear checked.</para>
<property namespace="ActnList" class="TCustomAction">Checked</property> specifies the checked state for the action. The value of <property namespace="ActnList" class="TCustomAction">Checked</property> is propagated to client controls and menu items.</para>
<condition os="Windows">If the action has a GroupIndex value greater than 0, then setting <property namespace="ActnList" class="TCustomAction">Checked</property> to true causes all other actions in the group to have their <property namespace="ActnList" class="TCustomAction">Checked</property> property set to false.</condition>
<condition os="Windows">Use the AutoCheck property to ensure that the action's <property namespace="ActnList" class="TCustomAction">Checked</property> property stays synchronized with client's <property namespace="ActnList" class="TCustomAction">Checked</property> properties.</condition>
<property namespace="ActnList" class="TCustomAction">DisableIfNoHandler</property> specifies whether the Enabled property of client components should be set to false if no handler can be found for the action. </para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">When the user triggers one of the action's clients, the application makes a series of attempts to determine how the action should respond. This includes checking a number of event handlers, and, if it fails to find an event handler, locating a target control and checking for a predefined response that applies to that target control. When <property namespace="ActnList" class="TCustomAction">DisableIfNoHandler</property> is true, if the application completes this sequence without finding any way for the action to respond to the user input, The action's Enabled property is set to false. </para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">In addition, for some predefined actions, <property namespace="ActnList" class="TCustomAction">DisableIfNoHandler</property> causes the action to disable itself if an event handler is required for the action to perform a meaningful task. For example, if you do not supply an OnAccept event handler to TFileOpen, then if <property namespace="ActnList" class="TCustomAction">DisableIfNoHandler</property> is true, the action disables itself because there is no way for the application to respond when the user selects a file name in the dialog.</para>
</comments>
</member>
<member name="P:ActnList.ActnList.Enabled">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Indicates whether client controls and menu items are enabled.</para>
<property namespace="ActnList" class="TCustomAction">Enabled</property> specifies the enabled state for the action. The value of <property namespace="ActnList" class="TCustomAction">Enabled</property> is propagated to client controls and menu items.</para>
<property namespace="ActnList" class="TCustomAction">GroupIndex</property> is used to define groups of actions that act like radio buttons. When <property namespace="ActnList" class="TCustomAction">GroupIndex</property> is greater than 0, it identifies the group to which the action belongs. When the Checked property of any action in that group is set to true, the Checked property of all other actions in the group is set to false. That is, only one action in the group can be checked at a time.</condition>
<property namespace="ActnList" class="TCustomAction">HelpContext</property> specifies the help context for the action when it is set. This value is propagated to client controls and menu items.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">When a client control has focus and the user presses the F1 key, the control uses the value of <property namespace="ActnList" class="TCustomAction">HelpContext</property> for this associated action to invoke the online help targeting a specific topic. The target topic is uniquely identified by a nonzero <property namespace="ActnList" class="TCustomAction">HelpContext</property> value. Leave the <property namespace="ActnList" class="TCustomAction">HelpContext</property> property of the client control at its default value of zero. This allows multiple controls (and multiple types of controls) to be associated with the same help topic through the one action object.</para>
<property namespace="ActnList" class="TCustomAction">HelpContext</property> is only used when the HelpType property of this action or the client control is htInteger.</para>
</note>
</comments>
</member>
<member name="P:ActnList.ActnList.HelpKeyword">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Indicates the help keyword for client controls and menu items.</para>
<property namespace="ActnList" class="TCustomAction">HelpKeyword</property>, when set, specifies the keyword that identifies a help topic for this action. This value is propagated to the <property namespace="ActnList" class="TCustomAction">HelpKeyword</property> property of client controls and menu items. The interpretation of <property namespace="ActnList" class="TCustomAction">HelpKeyword</property> depends on which help system is used to display the topic. For example, when using <condition os="Linux">HyperHelp (on Linux) or </condition>WinHelp<condition os="Linux"> (on Windows)</condition>, <property namespace="ActnList" class="TCustomAction">HelpKeyword</property> refers to an A link.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">When a client control has focus and the user presses the F1 key<condition os="Linux"> (or the key specified by the application's HelpKey property)</condition>, the control uses the value of <property namespace="ActnList" class="TCustomAction">HelpKeyword</property> for this associated action object to invoke the online help targeting a specific topic. Leave the <property namespace="ActnList" class="TCustomAction">HelpKeyword</property> property of the client control unassigned. This allows multiple controls (and multiple types of controls) to be associated with the same help topic through the one action object.</para>
<property namespace="ActnList" class="TCustomAction">HelpKeyword</property> is only used when the HelpType property of this action or the client control is htKeyword.</para>
</note>
</comments>
</member>
<member name="P:ActnList.ActnList.HelpType">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Indicates the mechanism for client controls and menu items to use when invoking help.</para>
<property namespace="ActnList" class="TCustomAction">HelpType</property>, when set, indicates whether client controls and menu items should use the HelpContext or the HelpKeyword property for invoking the help system. This value is propagated to the <property namespace="ActnList" class="TCustomAction">HelpType</property> property of client controls and menu items.</para>
</comments>
</member>
<member name="P:ActnList.ActnList.Hint">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Indicates the Help hint for client controls and menu items.</para>
<property namespace="ActnList" class="TCustomAction">Hint</property> holds the string that is the hint for that action when it is set. This value is propagated to client controls and menu items.</para>
</comments>
</member>
<member name="P:ActnList.ActnList.ImageIndex">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Indicates the <property namespace="ActnList" class="TCustomAction">ImageIndex</property> property for client controls and menu items.</para>
<property namespace="ActnList" class="TCustomAction">ImageIndex</property> is an index into the Images property of the action list <condition os="Windows">or action manager </condition>that contains the action. It identifies an image that is associated with controls and menu items that use this action.</para>
</comments>
</member>
<member name="P:ActnList.ActnList.ShortCut">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Specifies the <property namespace="ActnList" class="TCustomAction">ShortCut</property> property for client menu items.</para>
<property namespace="ActnList" class="TCustomAction">ShortCut</property> holds the value that is the shortcut for the action when it is set. This value is propagated to client menu items.</para>
<condition os="Windows">Actions can execute in response to multiple short cut key combinations. <property namespace="ActnList" class="TCustomAction">SecondaryShortCuts</property> lists all the short cut key combinations (other than the one specified by the ShortCut property) that can trigger the action. This lets you specify shortcuts for clients that do not have a ShortCut property or provide additional, secondary shortcuts.</condition>
<condition os="Windows">When the user types one of the key combinations listed in <property namespace="ActnList" class="TCustomAction">SecondaryShortCuts</property>, the action's Execute method is called.</condition>
</para>
</comments>
</member>
<member name="P:ActnList.ActnList.Visible">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Specifies the <property namespace="ActnList" class="TCustomAction">Visible</property> property for client controls and menu items.</para>
<property namespace="ActnList" class="TCustomAction">Visible</property> specifies the visible state for the action. This value is propagated to client controls and menu items.</para>
</comments>
</member>
<member name="E:ActnList.ActnList.OnHint">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Occurs when the mouse pauses over a client control or menu item.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <event namespace="ActnList" class="TCustomAction">OnHint</event> to override the default hint that appears when the user pauses the mouse over a client control or menu item. The <event namespace="ActnList" class="TCustomAction">OnHint</event> event handler can change the hint that appears (by changing the HintStr parameter), or display the hint in some application-specific way.</para>
<class namespace="ActnList">TAction</class> is the generic class for action objects that implement user commands across a range of different controls.</para>
<class namespace="ActnList">TAction</class> is a generic action component. It can be added to <condition os="Windows">action managers or</condition> action lists when there is no predefined action class that implements the desired response to user commands. Unlike predefined action classes, which have built-in methods that respond when users click the client controls, <class namespace="ActnList">TAction</class> has no built-in response to user commands. Instead, when using <class namespace="ActnList">TAction</class>, you can provide the response when the action "fires" by writing an OnExecute event handler, and configure the properties of <class namespace="ActnList">TAction</class> to reflect current conditions by writing an OnUpdate event handler.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Action objects are used to centralize the response to user commands (actions)<condition os="Windows"> and to represent user interface elements in applications that use action bands</condition>.</para>
<class namespace="ActnList">TAction</class> can also act as a base class for predefined action classes. You can derive from <class namespace="ActnList">TAction</class> if you wish to retain the published scope of TCustomAction members, or derive from TCustomAction if you wish to modify their scope.</para>
<condition os="Linux">For predefined actions that augment the behavior of <class namespace="ActnList">TAction</class>, see the action classes in the </condition>
<condition os="Windows">For predefined actions that augment the behavior of <class namespace="ActnList">TAction</class>, see the action classes in the </condition>
<method namespace="ActnList" class="TAction">Create</method>s and initializes a <method namespace="ActnList" class="TAction">TAction</method> object.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Applications do not usually create action objects explicitly. Actions are created automatically when you add them to an <condition os="Windows">action manager or </condition>action list component at design time. When instantiating <method namespace="ActnList" class="TAction">TAction</method> at runtime, assign a <method namespace="ActnList" class="TAction">TAction</method>List <condition os="Windows">or <method namespace="ActnList" class="TAction">TAction</method>Manager </condition>component to the new action's ActionList property after calling <method namespace="ActnList" class="TAction">Create</method>.</para>
<class namespace="ActnList">TActionLink</class> is the base class for action links that connect actions to commonly used properties of VCL objects, components and controls.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Most applications do not work directly with <class namespace="ActnList">TActionLink</class> objects. Instead, the clients of actions already include a specialized <class namespace="ActnList">TActionLink</class> descendant that manages the relationship between the client object and an action. <class namespace="ActnList">TActionLink</class> introduces methods to manage the relationship between properties on an action object and the corresponding properties of the client object. Descendant classes override these methods, implementing them for the particular properties of a class of client.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Component writers can use <class namespace="ActnList">TActionLink</class> as a base class for new action link classes that manage the relationship between actions and families of client objects that are not controls or menu items. </para>
<class namespace="ActnList">TActionLink</class> introduces interfaces for methods that support the following properties, most of which are linked with properties of the same name:</para>
<method namespace="ActnList" class="TActionLink">TActionLink</method> descendants call <method namespace="ActnList" class="TActionLink">IsCaptionLinked</method> to determine whether they need to propagate changes to the Caption property of the action so that they are reflected by the client object. When <method namespace="ActnList" class="TActionLink">IsCaptionLinked</method> returns true, the action controls the Caption property: Changes to the Caption property of the action are reflected by changes to the corresponding property of the client object. When <method namespace="ActnList" class="TActionLink">IsCaptionLinked</method> returns false, the client object does not reflect the Caption property of its action, either because it does not have a corresponding property, or, more commonly, because it manages the value of its corresponding property independently.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">As implemented in <method namespace="ActnList" class="TActionLink">TActionLink</method>, <method namespace="ActnList" class="TActionLink">IsCaptionLinked</method> merely checks that the Action property specifies a descendant of TCustomAction (that is, it is an action that has a Caption property). Descendant classes override <method namespace="ActnList" class="TActionLink">IsCaptionLinked</method> to determine whether the Caption property is linked with the appropriate client property.</para>
<method namespace="ActnList" class="TActionLink">TActionLink</method> descendants call <method namespace="ActnList" class="TActionLink">IsCheckedLinked</method> to determine whether they need to propagate changes to the Checked property of the action so that they are reflected by the client object. When <method namespace="ActnList" class="TActionLink">IsCheckedLinked</method> returns true, the action controls the Checked property: Changes to the Checked property of the action are reflected by changes to the corresponding property of the client object. When <method namespace="ActnList" class="TActionLink">IsCheckedLinked</method> returns false, the client object does not reflect the Checked property of its action, either because it does not have a corresponding property, or, more commonly, because it manages the value of its corresponding property independently.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">As implemented in <method namespace="ActnList" class="TActionLink">TActionLink</method>, <method namespace="ActnList" class="TActionLink">IsCheckedLinked</method> merely checks that the Action property specifies a descendant of TCustomAction (that is, it is an action that has a Checked property). Descendant classes override <method namespace="ActnList" class="TActionLink">IsCheckedLinked</method> to determine whether the Checked property is linked with the appropriate client property.</para>
<method namespace="ActnList" class="TActionLink">TActionLink</method> descendants call <method namespace="ActnList" class="TActionLink">IsEnabledLinked</method> to determine whether they need to propagate changes to the Enabled property of the action so that they are reflected by the client object. When <method namespace="ActnList" class="TActionLink">IsEnabledLinked</method> returns true, the action controls the Enabled property: Changes to the Enabled property of the action are reflected by changes to the corresponding property of the client object. When <method namespace="ActnList" class="TActionLink">IsEnabledLinked</method> returns false, the client object does not reflect the Enabled property of its action, either because it does not have a corresponding property, or, more commonly, because it manages the value of its corresponding property independently.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">As implemented in <method namespace="ActnList" class="TActionLink">TActionLink</method>, <method namespace="ActnList" class="TActionLink">IsEnabledLinked</method> merely checks that the Action property specifies a descendant of TCustomAction (that is, it is an action that has an Enabled property). Descendant classes override <method namespace="ActnList" class="TActionLink">IsEnabledLinked</method> to determine whether the Enabled property is linked with the appropriate client property.</para>
<method namespace="ActnList" class="TActionLink">TActionLink</method> descendants can call <method namespace="ActnList" class="TActionLink">IsGroupIndexLinked</method> to determine whether they need to propagate changes to the GroupIndex property of the action so that they are reflected by the client object. When <method namespace="ActnList" class="TActionLink">IsGroupIndexLinked</method> returns true, the action controls the GroupIndex property: Changes to the GroupIndex property of the action are reflected in the client object. When <method namespace="ActnList" class="TActionLink">IsGroupIndexLinked</method> returns false, the client object is not influenced by the GroupIndex property of its action.</condition>
<condition os="Windows">As implemented in <method namespace="ActnList" class="TActionLink">TActionLink</method>, <method namespace="ActnList" class="TActionLink">IsGroupIndexLinked</method> merely checks that the Action property specifies a descendant of TCustomAction, and if so, returns true.</condition>
<method namespace="ActnList" class="TActionLink">TActionLink</method> descendants can call <method namespace="ActnList" class="TActionLink">IsHelpContextLinked</method> to determine whether they need to propagate changes to the HelpContext property of the action so that they are reflected by the client object. When <method namespace="ActnList" class="TActionLink">IsHelpContextLinked</method> returns true, the action controls the HelpContext property: Changes to the HelpContext property of the action are reflected in the client object. When <method namespace="ActnList" class="TActionLink">IsHelpContextLinked</method> returns false, the client object is not influenced by the HelpContext property of its action.</condition>
<condition os="Windows">As implemented in <method namespace="ActnList" class="TActionLink">TActionLink</method>, <method namespace="ActnList" class="TActionLink">IsHelpContextLinked</method> merely checks that the Action property specifies a descendant of TCustomAction, and if so, returns true.</condition>
</para>
</comments>
</member>
<member name="M:ActnList.ActnList.IsHelpLinked">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Indicates whether the help properties for the action and client are linked.</para>
<method namespace="ActnList" class="TActionLink">TActionLink</method> descendants call <method namespace="ActnList" class="TActionLink">IsHelpLinked</method> to determine whether they need to propagate changes to the HelpContext, HelpKeyword, and HelpType properties of the action so that they are reflected by client objects. When <method namespace="ActnList" class="TActionLink">IsHelpLinked</method> returns true, the action controls these properties: Changes to any of the help properties of the action are reflected by changes to the corresponding property of the client object. When <method namespace="ActnList" class="TActionLink">IsHelpLinked</method> returns false, the client object does not reflect the help properties of its action, either because it does not have a corresponding property, or, more commonly, because it manages the value of its corresponding property independently.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">As implemented in <method namespace="ActnList" class="TActionLink">TActionLink</method>, <method namespace="ActnList" class="TActionLink">IsHelpLinked</method> merely checks that the Action property specifies a descendant of TCustomAction (that is, it is an action that has HelpContext, HelpKeyword, and HelpType properties). Descendant classes override <method namespace="ActnList" class="TActionLink">IsHelpLinked</method> to determine whether these properties are linked with the appropriate client property.</para>
</comments>
</member>
<member name="M:ActnList.ActnList.IsHintLinked">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Indicates whether the Hint properties for the action and client are linked.</para>
<method namespace="ActnList" class="TActionLink">TActionLink</method> descendants call <method namespace="ActnList" class="TActionLink">IsHintLinked</method> to determine whether they need to propagate changes to the Hint property of the action so that they are reflected by the client object. When <method namespace="ActnList" class="TActionLink">IsHintLinked</method> returns true, the action controls the Hint property: Changes to the Hint property of the action are reflected by changes to the corresponding property of the client object. When <method namespace="ActnList" class="TActionLink">IsHintLinked</method> returns false, the client object does not reflect the Hint property of its action, either because it does not have a corresponding property, or, more commonly, because it manages the value of its corresponding property independently.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">As implemented in <method namespace="ActnList" class="TActionLink">TActionLink</method>, <method namespace="ActnList" class="TActionLink">IsHintLinked</method> merely checks that the Action property specifies a descendant of TCustomAction (that is, it is an action that has a Hint property). Descendant classes override <method namespace="ActnList" class="TActionLink">IsHintLinked</method> to determine whether the Hint property is linked with the appropriate client property.</para>
<method namespace="ActnList" class="TActionLink">TActionLink</method> descendants call <method namespace="ActnList" class="TActionLink">IsImageIndexLinked</method> to determine whether they need to propagate changes to the ImageIndex property of the action so that they are reflected by the client object. When <method namespace="ActnList" class="TActionLink">IsImageIndexLinked</method> returns true, the action controls the ImageIndex property: Changes to the ImageIndex property of the action are reflected by changes to the corresponding property of the client object. When <method namespace="ActnList" class="TActionLink">IsImageIndexLinked</method> returns false, the client object does not reflect the ImageIndex property of its action, either because it does not have a corresponding property, or, more commonly, because it manages the value of its corresponding property independently.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">As implemented in <method namespace="ActnList" class="TActionLink">TActionLink</method>, <method namespace="ActnList" class="TActionLink">IsImageIndexLinked</method> merely checks that the Action property specifies a descendant of TCustomAction (that is, it is an action that has an ImageIndex property). Descendant classes override <method namespace="ActnList" class="TActionLink">IsImageIndexLinked</method> to determine whether the ImageIndex property is linked with the appropriate client property.</para>
<method namespace="ActnList" class="TActionLink">TActionLink</method> descendants call <method namespace="ActnList" class="TActionLink">IsShortCutLinked</method> to determine whether they need to propagate changes to the ShortCut property of the action so that they are reflected by the client object. When <method namespace="ActnList" class="TActionLink">IsShortCutLinked</method> returns true, the action controls the ShortCut property: Changes to the ShortCut property of the action are reflected by changes to the corresponding property of the client object. When <method namespace="ActnList" class="TActionLink">IsShortCutLinked</method> returns false, the client object does not reflect the ShortCut property of its action, either because it does not have a corresponding property, or, more commonly, because it manages the value of its corresponding property independently.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">As implemented in <method namespace="ActnList" class="TActionLink">TActionLink</method>, <method namespace="ActnList" class="TActionLink">IsShortCutLinked</method> merely checks that the Action property specifies a descendant of TCustomAction (that is, it is an action that has a ShortCut property). Descendant classes override <method namespace="ActnList" class="TActionLink">IsShortCutLinked</method> to determine whether the ShortCut property is linked with the appropriate client property.</para>
<method namespace="ActnList" class="TActionLink">TActionLink</method> descendants call <method namespace="ActnList" class="TActionLink">IsVisibleLinked</method> to determine whether they need to propagate changes to the Visible property of the action so that they are reflected by the client object. When <method namespace="ActnList" class="TActionLink">IsVisibleLinked</method> returns true, the action controls the Visible property: Changes to the Visible property of the action are reflected by changes to the corresponding property of the client object. When <method namespace="ActnList" class="TActionLink">IsVisibleLinked</method> returns false, the client object does not reflect the Visible property of its action, either because it does not have a corresponding property, or, more commonly, because it manages the value of its corresponding property independently.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">As implemented in <method namespace="ActnList" class="TActionLink">TActionLink</method>, <method namespace="ActnList" class="TActionLink">IsVisibleLinked</method> merely checks that the Action property specifies a descendant of TCustomAction (that is, it is an action that has a Visible property). Descendant classes override <method namespace="ActnList" class="TActionLink">IsVisibleLinked</method> to determine whether the Visible property is linked with the appropriate client property.</para>
<condition os="Windows">The associated action calls <method namespace="ActnList" class="TActionLink">SetAutoCheck</method> when its AutoCheck property changes so that the action link can propagate the new value to the client object. </condition>
<condition os="Windows">As implemented in <method namespace="ActnList" class="TActionLink">TActionLink</method>, <method namespace="ActnList" class="TActionLink">SetAutoCheck</method> does nothing. Descendant classes override <method namespace="ActnList" class="TActionLink">SetAutoCheck</method> to set the client property that corresponds to the action's AutoCheck property.</condition>
</para>
</comments>
</member>
<member name="M:ActnList.ActnList.SetCaption">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Introduces an interface for setting the caption on a client.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The associated action calls <method namespace="ActnList" class="TActionLink">SetCaption</method> when its Caption property changes so that the action link can propagate the new Caption value to the client object. </para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Value specifies the string to which the caption should be set.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">As implemented in <method namespace="ActnList" class="TActionLink">TActionLink</method>, <method namespace="ActnList" class="TActionLink">SetCaption</method> does nothing. Descendant classes override <method namespace="ActnList" class="TActionLink">SetCaption</method> to set the client property that corresponds to the action's Caption property if the IsCaptionLinked method returns true.</para>
</comments>
</member>
<member name="M:ActnList.ActnList.SetChecked">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Introduces an interface for setting the checked state of a client.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The associated action calls <method namespace="ActnList" class="TActionLink">SetChecked</method> when its Checked property changes so that the action link can propagate the new Checked value to the client object. </para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Value specifies the new value of the Checked property.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">As implemented in <method namespace="ActnList" class="TActionLink">TActionLink</method>, <method namespace="ActnList" class="TActionLink">SetChecked</method> does nothing. Descendant classes override <method namespace="ActnList" class="TActionLink">SetChecked</method> to set the client property that corresponds to the action's Checked property if the IsCheckedLinked method returns true.</para>
</comments>
</member>
<member name="M:ActnList.ActnList.SetEnabled">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Introduces an interface for setting the enabled state of a client.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The associated action calls <method namespace="ActnList" class="TActionLink">SetEnabled</method> when its Enabled property changes so that the action link can propagate the new Enabled value to the client object. </para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Value specifies the new value of the Enabled property.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">As implemented in <method namespace="ActnList" class="TActionLink">TActionLink</method>, <method namespace="ActnList" class="TActionLink">SetEnabled</method> does nothing. Descendant classes override <method namespace="ActnList" class="TActionLink">SetEnabled</method> to set the client property that corresponds to the action's Enabled property if the IsEnabledLinked method returns true.</para>
<condition os="Windows">The associated action calls <method namespace="ActnList" class="TActionLink">SetGroupIndex</method> when its GroupIndex property changes so that the action link can propagate the new GroupIndex value to the client object. </condition>
<condition os="Windows">As implemented in <method namespace="ActnList" class="TActionLink">TActionLink</method>, <method namespace="ActnList" class="TActionLink">SetGroupIndex</method> does nothing. It is not strictly necessary for descendant classes to override <method namespace="ActnList" class="TActionLink">SetGroupIndex</method> to set the client property that corresponds to the action's GroupIndex property, because the action itself implements the GroupIndex feature. That is, when an action's Checked property is set to true, it unchecks other actions in the same action list if they have the same GroupIndex value.</condition>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Introduces an interface for setting the help context of a client.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The associated action calls <method namespace="ActnList" class="TActionLink">SetHelpContext</method> when its HelpContext property changes so that the action link can propagate the new HelpContext value to the client object. </para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Value specifies the new value of the HelpContext property.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">As implemented in <method namespace="ActnList" class="TActionLink">TActionLink</method>, <method namespace="ActnList" class="TActionLink">SetHelpContext</method> does nothing. Descendant classes override <method namespace="ActnList" class="TActionLink">SetHelpContext</method> to set the client property that corresponds to the action's HelpContext property if the IsHelpLinked method returns true.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Introduces an interface for setting the help keyword of a client.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The associated action calls <method namespace="ActnList" class="TActionLink">SetHelpKeyword</method> when its HelpKeyword property changes so that the action link can propagate the new HelpKeyword value to the client object. </para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Value specifies the new value of the HelpKeyword property.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">As implemented in <method namespace="ActnList" class="TActionLink">TActionLink</method>, <method namespace="ActnList" class="TActionLink">SetHelpKeyword</method> does nothing. Descendant classes override <method namespace="ActnList" class="TActionLink">SetHelpKeyword</method> to set the client property that corresponds to the action's HelpKeyword property if the IsHelpLinked method returns true.</para>
</comments>
</member>
<member name="M:ActnList.ActnList.SetHelpType">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Introduces an interface for setting the HelpType property of a client.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The associated action calls <method namespace="ActnList" class="TActionLink">SetHelpType</method> when its HelpType property changes so that the action link can propagate the new HelpType value to the client object. </para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Value specifies the new value of the HelpType property.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">As implemented in <method namespace="ActnList" class="TActionLink">TActionLink</method>, <method namespace="ActnList" class="TActionLink">SetHelpType</method> does nothing. Descendant classes override <method namespace="ActnList" class="TActionLink">SetHelpType</method> to set the client property that corresponds to the action's HelpType property if the IsHelpLinked method returns true.</para>
</comments>
</member>
<member name="M:ActnList.ActnList.SetHint">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Introduces an interface for setting the hint for a client.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The associated action calls <method namespace="ActnList" class="TActionLink">SetHint</method> when its Hint property changes so that the action link can propagate the new Hint value to the client object. </para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Value specifies the new value of the Hint property.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">As implemented in <method namespace="ActnList" class="TActionLink">TActionLink</method>, <method namespace="ActnList" class="TActionLink">SetHint</method> does nothing. Descendant classes override <method namespace="ActnList" class="TActionLink">SetHint</method> to set the client property that corresponds to the action's Hint property if the IsHintLinked method returns true.</para>
</comments>
</member>
<member name="M:ActnList.ActnList.SetImageIndex">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Introduces an interface for setting the image index for a client.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The associated action calls <method namespace="ActnList" class="TActionLink">SetImageIndex</method> when its ImageIndex property changes so that the action link can propagate the new ImageIndex value to the client object. </para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Value specifies the new value of the ImageIndex property.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">As implemented in <method namespace="ActnList" class="TActionLink">TActionLink</method>, <method namespace="ActnList" class="TActionLink">SetImageIndex</method> does nothing. Descendant classes override <method namespace="ActnList" class="TActionLink">SetImageIndex</method> to set the client property that corresponds to the action's ImageIndex property if the IsImageIndexLinked method returns true.</para>
</comments>
</member>
<member name="M:ActnList.ActnList.SetShortCut">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Introduces an interface for setting the shortcut for a client.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The associated action calls <method namespace="ActnList" class="TActionLink">SetShortCut</method> when its ShortCut property changes so that the action link can propagate the new ShortCut value to the client object. </para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Value specifies the new value of the ShortCut property.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">As implemented in <method namespace="ActnList" class="TActionLink">TActionLink</method>, <method namespace="ActnList" class="TActionLink">SetShortCut</method> does nothing. Descendant classes override <method namespace="ActnList" class="TActionLink">SetShortCut</method> to set the client property that corresponds to the action's ShortCut property if the IsShortCutLinked method returns true.</para>
</comments>
</member>
<member name="M:ActnList.ActnList.SetVisible">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Introduces an interface for setting the visible state of a client.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The associated action calls <method namespace="ActnList" class="TActionLink">SetVisible</method> when its Visible property changes so that the action link can propagate the new Visible value to the client object. </para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Value specifies the new value of the Visible property.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">As implemented in <method namespace="ActnList" class="TActionLink">TActionLink</method>, <method namespace="ActnList" class="TActionLink">SetVisible</method> does nothing. Descendant classes override <method namespace="ActnList" class="TActionLink">SetVisible</method> to set the client property that corresponds to the action's Visible property if the IsVisibleLinked method returns true.</para>
</comments>
</member>
<member name="M:ActnList.RegisterActions">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Registers action classes so that they appear in the list of predefined actions in the action list editor<condition os="Windows"> or customize dialog</condition>.</para>
<routine namespace="ActnList">RegisterActions</routine> allows a class to appear in the action list editor<condition os="Windows"> or customize dialog</condition> as a selection when you choose New Action<condition os="Windows"> or Add Standard Action</condition>. Predefined actions are registered automatically. To install your own action classes so that they can be added to an action list<condition os="Windows"> or action manager</condition>, call <routine namespace="ActnList">RegisterActions</routine> to register them.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The CategoryName parameter specifies the value of the actions' Category property. </para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The AClasses parameter is an array of custom action class names.</para>
<para>In C++, the AClasses_Size parameter specifies the index of the last entry in the AClasses array (one less than the number of classes to register).</para>
</note>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The Resource parameter lets you assign default values to the properties of the actions being registered. Resource is the class of a TDataModule descendant that contains instances of the action classes listed by AClasses, where the properties of those instances are set to the default values. This parameter can be set to nil (Delphi) or NULL (C++) if there is no need to assign default values.</para>
</comments>
</member>
<member name="M:ActnList.UnRegisterActions">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Unregisters a set of actions.</para>
<routine namespace="ActnList">UnRegisterActions</routine> unregisters a set of actions that were registered with the RegisterActions procedure. The AClasses parameter is a list of registered action classes (descendants of TBasicAction) that are to be unregistered. In C++, the AClasses_Size parameter indicates the index of the last action class specified in AClasses (one less than the total number of classes).</para>
</comments>
</member>
<member name="M:ActnList.EnumRegisteredActions">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Iterates through the list of registered actions, passing them to a user-defined callback.</para>
<routine namespace="ActnList">EnumRegisteredActions</routine> iterates the list of registered actions, passing them to the user-defined callback, Proc. </para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Category is the category of the action. For TContainedAction descendants, this is the Category property; for ancestor classes you can pass in an empty string. The ActionClass parameter describes the class type of the action object. The Info parameter of the callback is the same as the Info parameter passed to <routine namespace="ActnList">EnumRegisteredActions</routine>. It allows the user to pass custom information to the callback.</para>
</comments>
</member>
<member name="M:ActnList.CreateAction">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Creates an action of a specified type.</para>
<routine namespace="ActnList">CreateAction</routine> creates an action of type ActionClass. AOwner is typically the form or data module. <routine namespace="ActnList">CreateAction</routine> is called automatically when you add an action to an action list<condition os="Windows"> or action manager</condition> at design time. Calling this function does the same thing as calling ActionClass.Create (Delphi) or the constructor of the specified action class (C++). The only exception is that <routine namespace="ActnList">CreateAction</routine> uses the Resource parameter of the RegisterActions procedure to initialize the values of the new action object.</para>
<class namespace="SvcMgr">TDependency</class> object represents a dependent service or load ordering group used by TService objects.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">A <class namespace="SvcMgr">TDependency</class> object represents a new service or load ordering group that must start before the service represented by a TService object. Collections of dependency objects are TDependencies objects. TService has Dependencies and LoadGroup properties that use dependency collections. Each dependency has a Name property that identifies the service or load ordering group, and a boolean IsGroup property to indicate whether the dependency represents a load ordering group.</para>
</comments>
</member>
<member name="P:SvcMgr.SvcMgr.Name">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Identifies the dependent service or load ordering group used by a TService object.</para>
<property namespace="SvcMgr" class="TDependency">Name</property> is the name identifying the service or load ordering group. If <property namespace="SvcMgr" class="TDependency">Name</property> is the name of a service, <property namespace="SvcMgr" class="TDependency">Name</property> reflects the actual ServiceStart<property namespace="SvcMgr" class="TDependency">Name</property> of a TService instance.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The property editor for the Dependencies property of TService technically uses the dependency's Display<property namespace="SvcMgr" class="TDependency">Name</property> to identify the dependency service in its collection list. However, <property namespace="SvcMgr" class="TDependency">Name</property> and Display<property namespace="SvcMgr" class="TDependency">Name</property> are nearly always the same.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Dependency objects that are load ordering groups are prefixed by SC_GROUP_IDENTIFIER. Setting the IsGroup property handles prefixing the <property namespace="SvcMgr" class="TDependency">Name</property> automatically.</para>
<para>A dependency can be a service. If this is true, do not confuse the various name-related properties of dependency and service objects. For more information, see Service name properties.</para>
</note>
</comments>
</member>
<member name="P:SvcMgr.SvcMgr.IsGroup">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Indicates whether the dependency represents a load ordering group for a service (TService object).</para>
<para>: Because services and service groups share the same name space, group names must be prefixed by the SC_GROUP_IDENTIFIER character to distinguish them from service names. If <property namespace="SvcMgr" class="TDependency">IsGroup</property> is set to true, SC_GROUP_IDENTIFIER will automatically be prefixed to the Dependency name (Name property). DisplayName is not modified.</para>
<class namespace="SvcMgr">TDependencies</class> is a collection of TDependency objects, each of which represents a dependent service or load ordering group for a service (TService instance). <class namespace="SvcMgr">TDependencies</class> objects are the implementation of the Dependencies property of TService.</para>
<method namespace="SvcMgr" class="TDependencies">Create</method>s an instance of a <method namespace="SvcMgr" class="TDependencies">TDependencies</method> object.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Applications should not need to call the constructor directly. Instances of TService create the <method namespace="SvcMgr" class="TDependencies">TDependencies</method> object from their own constructors. The Owner parameter is the TService instance that uses the <method namespace="SvcMgr" class="TDependencies">TDependencies</method> object to implement its Dependencies property.</para>
<method namespace="SvcMgr" class="TDependencies">Create</method> sets the TDependency owner to the Owner parameter and calls the inherited <method namespace="SvcMgr" class="TDependencies">Create</method>.</para>
</comments>
</member>
<member name="P:SvcMgr.SvcMgr.Items">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Lists the dependency objects in the dependencies collection.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The value of the Index parameter corresponds to the Index property of each TDependency object in the collection. It represents the position of the dependency object in the dependencies collection.</para>
<para>In Delphi, <property namespace="SvcMgr" class="TDependencies">Items</property> is the default property of <property namespace="SvcMgr" class="TDependencies">TDependencies</property>. This means that you can omit the property names. For example</para>
<para>In C++, <property namespace="SvcMgr" class="TDependencies">Items</property> can be accessed using the [] operator, to achieve an affect similar to the default property in Delphi.</para>
<class namespace="SvcMgr">TServiceThread</class> is the thread associated with a service. Each service application has one or more service objects, each of which has its own dedicated thread. <class namespace="SvcMgr">TServiceThread</class> instances represent those threads.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Instantiates and initializes a <method namespace="SvcMgr" class="TServiceThread">TServiceThread</method> object.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Applications do not need to call the constructor directly. Instances of TService create the <method namespace="SvcMgr" class="TServiceThread">TServiceThread</method> object on startup. The Service parameter is the TService instance for which the <method namespace="SvcMgr" class="TServiceThread">TServiceThread</method> is the dedicated thread.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The constructor sets the FreeOnTerminate property to true and then calls the base class constructor so that the thread object is created with its Suspended property set to false.</para>
</comments>
</member>
<member name="M:SvcMgr.SvcMgr.ProcessRequests">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Allows clients to invoke the service associated with the service thread.</para>
<method namespace="SvcMgr" class="TServiceThread">TServiceThread</method>'s <method namespace="SvcMgr" class="TServiceThread">ProcessRequests</method> is called in the Execute method after any associated service's OnExecute event handler has finished executing. For more information about optimizing service execution by spawning individual threads for each service request, see the Developer's Guide.</para>
<type namespace="XMLDOM">TErrorSeverity</type> indicates the severity of a failure and implies the corresponding response by a service startup program.</condition>
<para>Logs the error and displays a message, but continues.</para>
</td>
</tr>
<tr>
<td>
<para>esSevere</para>
</td>
<td>
<para>Logs the error but continues only if the last-known-good configuration is being started; otherwise the last-known-good configuration is started instead.</para>
</td>
</tr>
<tr>
<td>
<para>esCritical</para>
</td>
<td>
<para>Logs the error and starts up the last-known-good configuration instead. If this is the last-known-good configuration, the startup operation fails.</para>
<class namespace="SvcMgr">TService</class> encapsulates a Windows NT service in an NT service application. A Win32 service is accessed via the Service Control Manager and can be started automatically at system boot, by a user through the Services control panel applet, or by a Win32-based application that uses the service functions. Services can execute even when no user is logged on to the system. Windows NT also supports a driver service that does not interact with the SCM.</para>
<method namespace="SvcMgr" class="TService">GetServiceController</method> returns the handler for the service. You do not need to call this function directly. The service object's main function calls it automatically.</para>
<para> Each service in the service application has a main function for that service. When a request is made to start the service, the main thread of the service calls the RegisterServiceCtrlHandler function to register this control handler function. <method namespace="SvcMgr" class="TService">TService</method> automatically calls RegisterServiceCtrlHandler and returns this handler function. Because this function cannot be a class method (member function), the Service application wizard generates code that creates a non-member handler, (ServiceController) for your service object. This routine returns the service object's Handler (Controller).</para>
</note>
</comments>
</member>
<member name="M:SvcMgr.SvcMgr.CreateNew">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Instantiates and initializes a <method namespace="SvcMgr" class="TService">TService</method> object.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Call <method namespace="SvcMgr" class="TService">CreateNew</method> to instantiate a service object at runtime. Services added at design time are created automatically. The AOwner parameter specifies the <method namespace="SvcMgr" class="TService">TService</method>Application object that is responsible for ultimately freeing the service. The Dummy parameter is not used. Use <method namespace="SvcMgr" class="TService">CreateNew</method> rather than the Create constructor to instantiate a new service object at runtime. <method namespace="SvcMgr" class="TService">CreateNew</method> does not attempt to stream in an associated DFM file that indicates any components added to the service at design time.</para>
</comments>
</member>
<member name="M:SvcMgr.SvcMgr.ReportStatus">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Updates the Service Control Manager's status information for the calling service.</para>
<method namespace="SvcMgr" class="TService">ReportStatus</method> sends current status information about the calling service to the Service Control Manager.</para>
</comments>
</member>
<member name="M:SvcMgr.SvcMgr.LogMessage">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Sends an error message to the event log.</para>
<method namespace="SvcMgr" class="TService">LogMessage</method> sends an error message to the event log when an error or exception occurs. By default the EventType is EVENTLOG_ERROR_TYPE (usually indicating a loss of functionality or data) and the category and ID are zero. For example, if a service cannot be loaded as the system boots, it can log an error event, and the category and ID are zero.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The EventType specifies the type of event being logged. This parameter can be one of the following values:</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The Category parameter specifies the event category, which is source-specific information and can have any value.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The ID parameter specifies the event identifier, which is the message that goes with this event as an entry in the message file associated with the event source.</para>
</comments>
</member>
<member name="M:SvcMgr.SvcMgr.Destroy">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Disposes of a <method namespace="SvcMgr" class="TService">TService</method> instance.</para>
<method namespace="SvcMgr" class="TService">Destroy</method> frees the memory associated with the objects for the Params and Dependencies properties that were created in the constructor, and for the EventLogger object created in the LogMessage method. Then it calls the inherited <method namespace="SvcMgr" class="TService">Destroy</method>.</para>
</comments>
</member>
<member name="P:SvcMgr.SvcMgr.ErrCode">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Contains the service specific error code returned on starting or stopping the service.</para>
<property namespace="SvcMgr" class="TService">ErrCode</property> specifies a service specific error code that the service returns when an error occurs while the service is starting or stopping. If <property namespace="SvcMgr" class="TService">ErrCode</property> is not defined, the Win32<property namespace="SvcMgr" class="TService">ErrCode</property> property is used instead. </para>
</comments>
</member>
<member name="P:SvcMgr.SvcMgr.ParamCount">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Indicates the number of startup parameters for the service.</para>
<property namespace="SvcMgr" class="TService">ParamCount</property> is the number of parameters for the service. These parameters are typed into the Startup Parameters input window in the Service Control Manager.</para>
</comments>
</member>
<member name="P:SvcMgr.SvcMgr.Param">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Lists the parameters to the service.</para>
<property namespace="SvcMgr" class="TService">Param</property> is an indexed property that contains the parameters to the service. These parameters are typed into the Startup <property namespace="SvcMgr" class="TService">Param</property>eters input window in the Service Control Manager.</para>
</comments>
</member>
<member name="P:SvcMgr.SvcMgr.ServiceThread">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Identifies the dedicated thread for the service.</para>
<property namespace="SvcMgr" class="TService">ServiceThread</property> is the instance of the T<property namespace="SvcMgr" class="TService">ServiceThread</property> class that is the dedicated thread for the service. Each service in the service application has a dedicated thread that contains a loop in its Execute method for processing service requests. Often a service will spawn a new thread, derived from TThread, to free the service thread to continue processing service requests.</para>
</comments>
</member>
<member name="P:SvcMgr.SvcMgr.Status">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Indicates the current state of the service.</para>
<property namespace="SvcMgr" class="TService">Status</property> indicates the current state of the service. The status information is displayed in the Service Control Manager. </para>
</comments>
</member>
<member name="P:SvcMgr.SvcMgr.Terminated">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Indicates whether the service thread has terminated.</para>
<property namespace="SvcMgr" class="TService">Terminated</property> indicates whether the dedicated thread that the service is running in has terminated. </para>
</comments>
</member>
<member name="P:SvcMgr.SvcMgr.Win32ErrCode">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Indicates the Win32 error code reported by the service if a service specific code is not defined.</para>
<property namespace="SvcMgr" class="TService">Win32ErrCode</property> specifies a Win32 error code that the service uses to report an error that occurs when it is starting or stopping. If an error code specific to the service is defined, this property is automatically set to ERROR_SERVICE_SPECIFIC_ERROR and the service specific error is reported instead.</para>
</comments>
</member>
<member name="P:SvcMgr.SvcMgr.AllowStop">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Indicates whether clients are allowed to stop the service.</para>
<property namespace="SvcMgr" class="TService">AllowStop</property> indicates whether clients of the service can stop it by calling the Windows API ControlService function. When <property namespace="SvcMgr" class="TService">AllowStop</property> is true, an OnStop event occurs before the service stops.</para>
</comments>
</member>
<member name="P:SvcMgr.SvcMgr.AllowPause">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Indicates whether clients are allowed to pause the service.</para>
<property namespace="SvcMgr" class="TService">AllowPause</property> indicates whether clients of the service can pause and resume the service by calling the Windows API ControlService function. When <property namespace="SvcMgr" class="TService">AllowPause</property> is true, an OnPause event occurs before the service pauses, and an OnContinue event occurs when the service resumes.</para>
</comments>
</member>
<member name="P:SvcMgr.SvcMgr.Dependencies">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Lists the services or load ordering groups on which the service depends.</para>
<property namespace="SvcMgr" class="TService">Dependencies</property> is a container for TDependency objects, which are dependent services or load ordering groups that must start before this service. If the container is empty, the service has no dependencies.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Dependency on a service means that this service can only run if the service it depends on is running. Dependency on a group means that this service can run if at least one member of the group is running after an attempt to start all members of the group.</para>
</comments>
</member>
<member name="P:SvcMgr.SvcMgr.DisplayName">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Identifies the service in the Windows Service Control Manager.</para>
<property namespace="SvcMgr" class="TService">DisplayName</property> contains a string, with a maximum length of 256 characters, that is the name of the service as displayed in the Service Control Manager. User interface programs use <property namespace="SvcMgr" class="TService">DisplayName</property> to identify the service. <property namespace="SvcMgr" class="TService">DisplayName</property> is case-preserved in the Service Control Manager, however display name comparisons are always case-insensitive.</para>
<para>A dependency can be a service. If this is true, do not confuse the various name-related properties of dependency and service objects. For more information, see Service name properties.</para>
</note>
</comments>
</member>
<member name="P:SvcMgr.SvcMgr.ErrorSeverity">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Indicates the severity of service startup failure.</para>
<property namespace="SvcMgr" class="TService">ErrorSeverity</property> indicates the severity if this service fails to start during startup of the service application. </para>
</comments>
</member>
<member name="P:SvcMgr.SvcMgr.Interactive">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Indicates whether the service is interactive with the Windows desktop.</para>
<property namespace="SvcMgr" class="TService">Interactive</property> indicates whether the service can interact with the Windows desktop. <property namespace="SvcMgr" class="TService">Interactive</property> only has an effect when ServiceType is stWin32. For more information about creating interactive NT services, see the Microsoft Help.</para>
</comments>
</member>
<member name="P:SvcMgr.SvcMgr.LoadGroup">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Names of the load ordering group that includes the service.</para>
<property namespace="SvcMgr" class="TService">LoadGroup</property> is the name of the load-ordering group that includes the service. This is used by other services that have dependencies on the load ordering group (See Dependencies). The registry lists load-ordering groups at HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\ServiceGroupOrder. The order in which services are loaded depends on the order of the load groups in the Registry and the dependencies listed in service Dependencies properties.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Because services and service groups share the same name space, the SC_GROUP_IDENTIFIER character must prefix group names to distinguish them from service names. This is automatically prefixed if the TDependency's IsGroup property is true.</para>
<para>A dependency can be a service. If this is true, do not confuse the various name-related properties of dependency and service objects. For more information, see Service name properties.</para>
</note>
</comments>
</member>
<member name="P:SvcMgr.SvcMgr.Password">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Specifies the password, optionally used depending upon the ServiceStartName, for accessing the service.</para>
<property namespace="SvcMgr" class="TService">Password</property> is the password for the account name specified by the ServiceStartName property if the ServiceType is stWin32. </para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">If <property namespace="SvcMgr" class="TService">Password</property> is nil (Delphi) or NULL (C++), or if it points to an empty string, the service has no password. If ServiceType is stDevice or stFileSystem, this parameter is ignored.</para>
<property namespace="SvcMgr" class="TService">ServiceStartName</property> is the name used in the Service Control Manager Startup dialog to start the service.</para>
<property namespace="SvcMgr" class="TService">ServiceStartName</property> is the name used to start the service.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">If ServiceType is stWin32, <property namespace="SvcMgr" class="TService">ServiceStartName</property> is the account name (in the form "DomainName\Username") which the service process is logged on as when it runs. If the account belongs to the built-in domain, ".\Username" can be specified. If the service application includes more than one service, leave <property namespace="SvcMgr" class="TService">ServiceStartName</property> blank, and leave the Password property blank. </para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">If the service type is not stWin32, <property namespace="SvcMgr" class="TService">ServiceStartName</property> is the driver object name (\FileSytems\Rdr or \Driver\Xns) which the input and output system uses to load the device driver. With device drivers or file systems drivers, you can leave <property namespace="SvcMgr" class="TService">ServiceStartName</property> blank and the I/O system will create a default name based on the service name.</para>
<para>A dependency can be a service. If this is true, do not confuse the various name-related properties of dependency and service objects. For more information, see Service name properties.</para>
</note>
</comments>
</member>
<member name="P:SvcMgr.SvcMgr.ServiceType">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Identifies the type of the service as Win32, device driver, or file system driver.</para>
<property namespace="SvcMgr" class="TService">ServiceType</property> indicates the type of service. <property namespace="SvcMgr" class="TService">ServiceType</property> can be stWin32 (a Win32 service ΓÇô the default), stDevice (a device driver), or stFileSystem (a file system driver).</para>
</comments>
</member>
<member name="P:SvcMgr.SvcMgr.StartType">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Indicates when or how the service starts.</para>
<property namespace="SvcMgr" class="TService">TagID</property> is the unique tag value for this service in its LoadGroup. If no tag is requested, this property is 0. Tags are only evaluated when the ServiceType is not stWin32 and the StartType is stBoot or stSystem.</para>
</comments>
</member>
<member name="P:SvcMgr.SvcMgr.WaitHint">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Specifies the estimated time, in milliseconds, between a call from the Windows Service Control Manager and the service reporting its status.</para>
<property namespace="SvcMgr" class="TService">WaitHint</property> specifies the amount of time, in milliseconds, that can elapse between a pending start, stop, pause, or continue operation and the service setting its status with a call to the Windows API. Normally this is handled automatically. If the service performs a lengthy operation of more than <property namespace="SvcMgr" class="TService">WaitHint</property> time in one of its event handlers, you should call ReportStatus method to update to the Service Control Manager.</para>
</comments>
</member>
<member name="E:SvcMgr.SvcMgr.BeforeInstall">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Occurs before the service is first registered with the Windows Service Control manager.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Write a <event namespace="SvcMgr" class="TService">BeforeInstall</event> event handler to take specific action immediately before the service is first registered. Install services by running the service application with the INSTALL switch.</para>
</comments>
</member>
<member name="E:SvcMgr.SvcMgr.AfterInstall">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Occurs immediately after the service is registered with the Windows Service Control manager.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Write an <event namespace="SvcMgr" class="TService">AfterInstall</event> event handler to take specific action immediately after the service is registered. Install services by running the service application with the INSTALL switch.</para>
</comments>
</member>
<member name="E:SvcMgr.SvcMgr.BeforeUninstall">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Occurs immediately before the service is removed from the Service Control manager's database.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Write a <event namespace="SvcMgr" class="TService">BeforeUninstall</event> event handler to take specific action immediately before the service is removed. Uninstall services by running the service application with the UNINSTALL switch.</para>
</comments>
</member>
<member name="E:SvcMgr.SvcMgr.AfterUninstall">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Occurs immediately after the service is removed from the Service Control manager's database.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Write an <event namespace="SvcMgr" class="TService">AfterUninstall</event> event handler to take specific action immediately after the service is removed. Uninstall services by running the service application with the UNINSTALL switch.</para>
</comments>
</member>
<member name="E:SvcMgr.SvcMgr.OnContinue">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Occurs when the Service Control manager resumes the service after it has been paused.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Write an <event namespace="SvcMgr" class="TService">OnContinue</event> event handler to take specific action when the Service Control manager resumes the service after it has been paused. </para>
</comments>
</member>
<member name="E:SvcMgr.SvcMgr.OnExecute">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Occurs when the thread associated with the service starts up.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">If you are not spawning a new thread to handle individual service requests in an OnStart event handler, this is where you implement the service. When the <event namespace="SvcMgr" class="TService">OnExecute</event> event handler finishes, the service thread terminates. Most <event namespace="SvcMgr" class="TService">OnExecute</event> event handlers contain a loop that calls the service thread's ProcessRequests method so that other service requests are not locked out.</para>
</comments>
</member>
<member name="E:SvcMgr.SvcMgr.OnPause">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Occurs when the Service Control manager pauses the service temporarily.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Write an <event namespace="SvcMgr" class="TService">OnPause</event> event handler to take specific action when the service is temporarily paused. </para>
</comments>
</member>
<member name="E:SvcMgr.SvcMgr.OnShutdown">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Occurs when the system running the service application is about to shut down.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Write an <event namespace="SvcMgr" class="TService">OnShutdown</event> event handler to take specific action just before the service shuts down. The service application terminates immediately after <event namespace="SvcMgr" class="TService">OnShutdown</event>.</para>
<event namespace="SvcMgr" class="TService">OnStart</event>up occurs when the service first starts up, before the OnExecute event.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">This event should be used to initialize the service. For example, if each service request is handled in a separate thread (a good idea if handling the request takes much time) the thread for a request is spawned in an <event namespace="SvcMgr" class="TService">OnStart</event> event handler. </para>
</comments>
</member>
<member name="E:SvcMgr.SvcMgr.OnStop">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Occurs when the Service Control manager stops the service.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Write an <event namespace="SvcMgr" class="TService">OnStop</event> event handler to take specific action when the service stops. </para>
<class namespace="SvcMgr">TServiceApplication</class> encapsulates a Windows NT application type known as a service. <class namespace="SvcMgr">TServiceApplication</class> provides the fundamental behavior of this type of application. Each Service project automatically declares an Application variable of type <class namespace="SvcMgr">TServiceApplication</class> as the instance of the application. The Application variable is added to a project by selecting File | New from the menu of the IDE main window and selecting Service Application in the New Items dialog.</para>
<class namespace="SvcMgr">TServiceApplication</class> contains TService objects, each of which encapsulates a Windows NT service. The service application object provides methods to create service objects and to install, register, dispatch, and uninstall services.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">When the service application is run using the /INSTALL switch, it registers the services it contains. When run using the /UNINSTALL switch, it unregisters its services. Unless the application is run with the /SILENT switch, the service application shows a confirmation message after successfully installing or uninstalling its services.</para>
<para> Do not add the Forms or Httpapp units to the uses list of the project (Delphi) or includ the unit header for these units in the project source (C++). Those units declare conflicting Application variables of types TApplication and TWebApplication, respectively.</para>
</note>
</comments>
</member>
<member name="M:SvcMgr.SvcMgr.Create">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Instantiates a <method namespace="SvcMgr" class="TServiceApplication">TServiceApplication</method> object.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Applications do not need to call the constructor directly. <method namespace="SvcMgr" class="TServiceApplication">TServiceApplication</method> is instantiated by selecting File | New from the menu of the IDE main window and selecting Service Application in the New Items dialog. An Application variable of type <method namespace="SvcMgr" class="TServiceApplication">TServiceApplication</method> is declared and initialized as the instance of the application.</para>
</comments>
</member>
<member name="M:SvcMgr.SvcMgr.CreateForm">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Creates the service object or objects for the service application.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call <method namespace="SvcMgr" class="TServiceApplication">CreateForm</method> in an application. The module manager calls <method namespace="SvcMgr" class="TServiceApplication">CreateForm</method> internally to register the service objects of the service application. </para>
<method namespace="SvcMgr" class="TServiceApplication">CreateForm</method> instantiates a TService object for each service contained in the service application. <method namespace="SvcMgr" class="TServiceApplication">CreateForm</method> is called automatically, for the first service, when the service application is first created. Subsequently, <method namespace="SvcMgr" class="TServiceApplication">CreateForm</method> is called for each new service added to the application. To add a new service, select File | New from the menu of the IDE main window and choose Service in the New Items dialog.</para>
</comments>
</member>
<member name="M:SvcMgr.SvcMgr.Initialize">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Sets the initial state of the application and hides any associated MainForm.</para>
<method namespace="SvcMgr" class="TServiceApplication">Initialize</method> sets the initial state of the application to hide any main form that may be associated with the application. Service applications are rarely interactive and do not typically have a form associated with them. If a form has been added to the application, <method namespace="SvcMgr" class="TServiceApplication">Initialize</method> hides it on start. <method namespace="SvcMgr" class="TServiceApplication">Initialize</method> then follows the standard (default) VCL application initialization process.</para>
</comments>
</member>
<member name="M:SvcMgr.SvcMgr.Run">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Installs, registers, and adds services to its component list, and creates a thread for the service application.</para>
<method namespace="SvcMgr" class="TServiceApplication">Run</method> handles installing and uninstalling services, depending on the command line switches. When the service application is run using the /INSTALL switch, it registers the services it contains. When run using the /UNINSTALL switch, it unregisters its services. Unless the application is run with the /SILENT switch, the service application shows a confirmation message after successfully installing or uninstalling its services.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">If not called with the /INSTALL or /UNINSTALL switch, <method namespace="SvcMgr" class="TServiceApplication">Run</method> creates a service application thread that responds to Windows messages from clients. Note that this thread is for the application and differs from the dedicated TServiceThread instances associated with individual services in the application.</para>
</comments>
</member>
<member name="M:SvcMgr.SvcMgr.Destroy">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Disposes of an instance of a <method namespace="SvcMgr" class="TServiceApplication">TServiceApplication</method> object.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">You do not need to call the destructor directly. <method namespace="SvcMgr" class="TServiceApplication">TServiceApplication</method> is destroyed when your application closes.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The destructor frees the memory associated with sub-objects.</para>
</comments>
</member>
<member name="P:SvcMgr.SvcMgr.ServiceCount">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Indicates the number of services in the service application.</para>
<property namespace="SvcMgr" class="TServiceApplication">ServiceCount</property> is the number of services in the service application. Each service is encapsulated by a TService instance and has its own dedicated service thread.</para>
<property namespace="SvcMgr" class="TServiceApplication">Title</property> is the name of the service application. This text string appears below the icon of the application when it is minimized.</para>
<class namespace="ExtDlgs">TOpenPictureDialog</class> displays a modal Windows dialog box for selecting and opening graphics files. This component is just like TOpenDialog, except that it includes a rectangular preview region. If the selected image can be read by TPicture, it is displayed in the preview region; supported file types include bitmap (.BMP), icon (.ICO), Windows metafile (.WMF), and enhanced Windows metafile (.EMF). If the selected image cannot be displayed, "(None)" appears in the preview region.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">If the user selects a file of an unrecognized type, TPicture raises an EInvalidGraphic exception.</para>
</comments>
</member>
<member name="M:ExtDlgs.ExtDlgs.Execute">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Displays the file-selection dialog.</para>
<method namespace="ExtDlgs" class="TOpenPictureDialog">Execute</method> opens the file-selection dialog, returning true when the user selects a file and clicks Open. If the user clicks Cancel, <method namespace="ExtDlgs" class="TOpenPictureDialog">Execute</method> returns false.</para>
<method namespace="ExtDlgs" class="TOpenPictureDialog">Create</method>s and initializes a <method namespace="ExtDlgs" class="TOpenPictureDialog">TOpenPictureDialog</method> instance.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The <method namespace="ExtDlgs" class="TOpenPictureDialog">Create</method> method generates a <method namespace="ExtDlgs" class="TOpenPictureDialog">TOpenPictureDialog</method> instance, but the dialog does not appear at runtime until the Execute method is called. <method namespace="ExtDlgs" class="TOpenPictureDialog">Create</method> initializes the Filter property by defining a filter for each file type that TPicture supports.</para>
<class namespace="ExtDlgs">TSavePictureDialog</class> displays a modal Windows dialog box for selecting file names and saving graphics files. This component is just like TSaveDialog, except that it includes a rectangular preview region. If the selected image can be read by TPicture, it is displayed in the preview region; supported file types include bitmap (.BMP), icon (.ICO), Windows metafile (.WMF), and enhanced Windows metafile (.EMF). If the selected image cannot be displayed, "(None)" appears in the preview region.</para>
</comments>
</member>
<member name="M:ExtDlgs.ExtDlgs.Execute">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Displays the Save As dialog box.</para>
<method namespace="ExtDlgs" class="TSavePictureDialog">Execute</method> opens the Save As dialog, returning true when the user selects a file name and clicks Save.</para>
<type namespace="Qt">TEdgeBorder</type>s is a set of <type namespace="Qt">TEdgeBorder</type> values. Each <type namespace="Qt">TEdgeBorder</type> value indicates whether a beveled edge appears on a particular side of a control. The following table lists the <type namespace="Qt">TEdgeBorder</type> values:</para>
<para>The control has a beveled right edge.</para>
</td>
</tr>
<tr>
<td>
<para>ebBottom</para>
</td>
<td>
<para>The control has a beveled bottom edge.</para>
</td>
</tr>
</table>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">In addition to the values in the preceding table, the QGraphics unit defines the ebRect constant to represent all the edges of a control:</para>
<class namespace="ToolWin">TToolWindow</class> is the ancestor of the TCoolBar and TToolBar components, which facilitate the arrangement of buttons and other visual controls.</para>
<method namespace="ToolWin" class="TToolWindow">Create</method>s and initializes a <method namespace="ToolWin" class="TToolWindow">TToolWindow</method> instance.</para>
<method namespace="ToolWin" class="TToolWindow">Create</method> generates a <method namespace="ToolWin" class="TToolWindow">TToolWindow</method> and initializes its properties.</para>
</comments>
</member>
<member name="P:ToolWin.ToolWin.EdgeBorders">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Determines which sides of the control have visible borders.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use the <property namespace="ToolWin" class="TToolWindow">EdgeBorders</property> property to add or remove borders. The appearance of the borders can be set with the EdgeInner and EdgeOuter properties.</para>
</comments>
</member>
<member name="P:ToolWin.ToolWin.EdgeInner">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Determines the border style for the control's inner edge.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <property namespace="ToolWin" class="TToolWindow">EdgeInner</property> to provide the tool window with a three-dimensional beveled look. A tool window has two borders on each side, an outer border drawn next to the outer edge, and an inner border drawn inside the outer border. <property namespace="ToolWin" class="TToolWindow">EdgeInner</property> specifies the appearance of the inner border. It can be raised (esRaised), lowered (esLowered), or left off altogether (esNone).</para>
<para>The <property namespace="ToolWin" class="TToolWindow">EdgeInner</property> property has an effect only on the sides specified by the EdgeBorders property.</para>
</note>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <property namespace="ToolWin" class="TToolWindow">EdgeInner</property> with EdgeOuter to give the component a three-dimensional look.</para>
</comments>
</member>
<member name="P:ToolWin.ToolWin.EdgeOuter">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Determines the border style for the control's outer edge.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <property namespace="ToolWin" class="TToolWindow">EdgeOuter</property> to provide the tool window with a three-dimensional beveled look. A tool window has two borders on each side, an outer border drawn next to the outer edge, and an inner border drawn inside the outer border. <property namespace="ToolWin" class="TToolWindow">EdgeOuter</property> specifies the appearance of the outer border. It can be raised (esRaised), lowered (esLowered), or left off altogether (esNone).</para>
<para>The EdgeInner property has an effect only on the sides specified by the EdgeBorders property.</para>
</note>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <property namespace="ToolWin" class="TToolWindow">EdgeOuter</property> with EdgeInner to give the component a three-dimensional look.</para>
</comments>
</member>
<member name="T:ToolWin.TToolDockObject">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Handles drag-and-dock operations for toolbar controls.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <class namespace="ToolWin">TToolDockObject</class> to handle drag-and-dock operations for toolbar controls that are docked to a TControlBar object.</para>
<class namespace="ToolWin">TToolDockObject</class> is designed for tool bars that are docked to TControlBar. It may not work as expected when the application is docking a tool bar to a form or panel.</para>
<class namespace="ToolWin">TToolDockForm</class> is a default floating dock site class for tool buttons.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Assign <class namespace="ToolWin">TToolDockForm</class> to the FloatingDockSiteClass property of tool buttons to get appropriate docking behavior.</para>
</comments>
</member>
<member name="M:ToolWin.ToolWin.CanResize">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Specifies whether the control can resize itself.</para>
<method namespace="ToolWin" class="TToolDockForm">CanResize</method> is called automatically when an attempt is made to resize the control, after any autosizing has occurred. The NewWidth and NewHeight parameters specify the attempted new values for the control's height and width. <method namespace="ToolWin" class="TToolDockForm">CanResize</method> optionally adjusts the values of NewWidth and NewHeight, and returns true if the control can be resized to the returned values. <method namespace="ToolWin" class="TToolDockForm">CanResize</method> returns false if the control can't be resized. </para>
<method namespace="ToolWin" class="TToolDockForm">Create</method>s an instance of <method namespace="ToolWin" class="TToolDockForm">TToolDockForm</method>.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">AOwner is the dock form's owner, which is responsible for freeing the tool dock form.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The constructor initializes the BorderWidth property to 1.</para>
</comments>
</member>
<member name="M:ToolWin.ToolWin.CreateParams">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Initializes the window-creation parameter record when the form window is created.</para>
<method namespace="ToolWin" class="TToolDockForm">CreateParams</method> calls the inherited <method namespace="ToolWin" class="TToolDockForm">CreateParams</method> method, and then adds WS_POPUP to the Style property.</para>
</comments>
</member>
<member name="M:ToolWin.ToolWin.DoAddDockClient">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Performs actions when a control is docked to the form.</para>
<method namespace="ToolWin" class="TToolDockForm">DoAddDockClient</method> sets the client's Align property to alNone and its BoundsRect property to ClientRect. Then <method namespace="ToolWin" class="TToolDockForm">DoAddDockClient</method> calls the inherited <method namespace="ToolWin" class="TToolDockForm">DoAddDockClient</method> method and sets the form's AutoSize property to true.</para>
</comments>
</member>
<member name="T:AxCtrls.TOleStream">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">TOleStream reads and writes information over a streaming interface that is provided by an OLE object.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use TOleStream to create a TStream wrapper for an OLE stream interface. TOleStream uses the streaming interface of the OLE stream to read and write information. TActiveXControl objects use TOleStream to load themselves from a stream or save themselves to a stream.</para>
<method namespace="axctrls" class="TOLEStream">Read</method>s up to Count bytes from the current position into Buffer.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Call <method namespace="axctrls" class="TOLEStream">Read</method> to read data from the OLE stream when it is not known how many bytes are available. Buffer must have at least Count bytes allocated to hold the data that was read from the stream. </para>
<method namespace="axctrls" class="TOLEStream">Read</method> uses the stream interface to transfer up to Count bytes into Buffer, starting at the current position, and then advances the current position by the number of bytes actually transferred. <method namespace="axctrls" class="TOLEStream">Read</method> returns the number of bytes actually transferred (which may be less than the number requested in Count.)</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">All the other data-reading methods of an OLE stream (<method namespace="axctrls" class="TOLEStream">Read</method>Buffer, <method namespace="axctrls" class="TOLEStream">Read</method>Component) call <method namespace="axctrls" class="TOLEStream">Read</method> to do their actual reading.</para>
<method namespace="axctrls" class="TOLEStream">Write</method>s Count bytes from Buffer to the current position in the OLE stream and updates the current position by Count bytes.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <method namespace="axctrls" class="TOLEStream">Write</method> to write Count bytes to the OLE stream, starting at the current position. <method namespace="axctrls" class="TOLEStream">Write</method> uses the stream interface to transfer the information from Buffer.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">All the other data-writing methods of an OLE stream (<method namespace="axctrls" class="TOLEStream">Write</method>Buffer, <method namespace="axctrls" class="TOLEStream">Write</method>Component) call <method namespace="axctrls" class="TOLEStream">Write</method> to do their actual writing.</para>
</comments>
</member>
<member name="M:AxCtrls.AxCtrls.Seek">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Resets the current position of the stream.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <method namespace="axctrls" class="TOLEStream">Seek</method> to move the current position by the indicated offset. <method namespace="axctrls" class="TOLEStream">Seek</method> uses the stream interface to change the current position to the value indicated by the Offset and Origin parameters.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The Origin parameter indicates how to interpret the Offset parameter. Origin should be one of the following values:</para>
<method namespace="axctrls" class="TOLEStream">Create</method>s a TOleStream object to represent a stream interface.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Call <method namespace="axctrls" class="TOLEStream">Create</method> to convert a stream interface into a TOleStream object. The Stream parameter is the stream interface that the TOleStream object uses for reading and writing.</para>
<class namespace="axctrls">TConnectionPoint</class> implements the IConnectionPoint interface, which client applications call to register an interest in a specific outgoing interface. The corresponding outgoing interface defines event handlers that the client implements. The client uses IConnectionPoint to supply its implementation of this interface (called an event sink), so that it can be called when events occur.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Wizards that generate event support code automatically create a class member of type <class namespace="axctrls">TConnectionPoint</class>, which maintains a list of event sinks supplied by clients.</para>
<class namespace="axctrls">TConnectionPoint</class> objects support the following features:</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Outgoing interfaces, such as event sets.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The ability to enumerate the IIDs of the outgoing interfaces.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The ability to connect and disconnect sinks to the object for those outgoing IIDs.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The ability to enumerate the connections that exist to a particular outgoing interface.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The IConnectionPoint and IConnectionPointContainer interfaces are used for OLE event handling. Because the wizard automatically sets up events for a control, users only need to use these interfaces directly when they wish to modify the standard VCL implementation or to add events to a COM server whose wizard does not generate event support code.</para>
<method namespace="axctrls" class="TConnectionPoint">Create</method> is called automatically by the connection point container's <method namespace="axctrls" class="TConnectionPoint">Create</method>ConnectionPoint method, to instantiate a connection point object. This occurs when an ActiveX control is initialized.</para>
<method namespace="axctrls" class="TConnectionPoint">Create</method> allocates memory for a connection point object and calls the inherited <method namespace="axctrls" class="TConnectionPoint">Create</method>, passing it the Container's controlling IUnknown. Container is a connection point container object. <method namespace="axctrls" class="TConnectionPoint">Create</method> adds the connection point object to the Container. Then it sets the</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">IID as the GUID or interface identifier of the outgoing interface managed by this connection point.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">IKind, indicating whether it is a single or multiple connection to that point.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">OnConnect as the connection event used in the IConnectionPoint Advise method.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">TConnectEvent points to a procedure for the OnConnect event of the connection point. TConnectionKind is a type indicating whether there are multiple connections to the connection point.</para>
<method namespace="axctrls" class="TConnectionPoint">Destroy</method>s the instance of a connection point object.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">It is not necessary to explicitly free the connection point object. Connection point objects are automatically destroyed. If the connection point container object is not nil, <method namespace="axctrls" class="TConnectionPoint">Destroy</method> calls on it to remove the connection point object from it.</para>
</comments>
</member>
<member name="P:AxCtrls.AxCtrls.SinkList">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Lists the sinks for the outgoing interfaces maintained by the connection point.</para>
<property namespace="axctrls" class="TConnectionPoint">SinkList</property> lists the sinks managed by the connection point. These are the interfaces that clients implement for responding to server events. When a client registers an interest in the connection point, it supplies an interface pointer that is added to this list.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Each item in the list can be cast to an IUnknown and used to access the outgoing interface.</para>
<class namespace="AxCtrls">TConnectionPoints</class> implements the IConnectionPointContainer interface for a COM object that generates events on clients.</para>
<class namespace="AxCtrls">TConnectionPoints</class> lets an object indicate the existence of outgoing interfaces (event interfaces). <class namespace="AxCtrls">TConnectionPoints</class> implements the IConnectionPointContainer interface, which clients use to register an interest in event notifications. COM wizards add a <class namespace="AxCtrls">TConnectionPoints</class> object as a class member to automatically generated classes that fire events on clients.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The IConnectionPoint interface provides access to an enumerator sub-object with the IEnumConnectionPoints interface. It also provides access to all the connection point sub-objects, each of which implements the IConnectionPoint interface. The IConnectionPoint interface provides access to an enumerator sub-object with the IEnumConnections interface.</para>
<class namespace="AxCtrls">TConnectionPoints</class> objects are used to obtain access to:</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">An enumerator sub-object with the IEnumConnectionPoints interface. The IEnumConnectionPoints interface can be used to enumerate connection points for each outgoing IID.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Connection point sub-objects with the IConnectionPoint interface for each outgoing IID. Through the IConnectionPoint interface, a client starts or terminates an advisory loop with the connectable object and the client's own sink. The client can also use the IConnectionPoint interface to obtain an enumerator object with the IEnumConnections interface to enumerate the connections that it knows about.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Because the ActiveX wizard automatically sets up events for a control, users only need to use these interfaces directly when they wish to modify the standard VCL implementation or to add events to a non-ActiveX control automation server.</para>
<method namespace="AxCtrls" class="TConnectionPoints">CreateConnectionPoint</method> is automatically called when an ActiveX control is initialized. <method namespace="AxCtrls" class="TConnectionPoints">CreateConnectionPoint</method> creates and returns a connection point object. It passes to the connection point constructor:</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Itself as the connection point container.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">IID as the GUID or interface identifier of the outgoing interface managed by this connection point.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">OnConnect as the connection event used in the IConnectionPoint Advise method.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">TConnectEvent is a pointer to a procedure for the OnConnect event of the connection point object being created. TConnectionKind is a type indicating whether there are multiple connections to that connection point.</para>
</comments>
</member>
<member name="M:AxCtrls.AxCtrls.Create">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Instantiates a connection points object.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">It is not necessary to call <method namespace="AxCtrls" class="TConnectionPoints">Create</method> directly. It is used internally by other objects to create the connection points object.</para>
<method namespace="AxCtrls" class="TConnectionPoints">Create</method> allocates memory for a connection points object and initializes the Controller property using the AController parameter. Then it creates a list for the individual connection point objects that it will contain.</para>
<method namespace="AxCtrls" class="TConnectionPoints">Destroy</method> is called automatically. It is not necessary for the user to dispose of the connection points object. <method namespace="AxCtrls" class="TConnectionPoints">Destroy</method> frees the list of connection point objects that was created in the constructor.</para>
</comments>
</member>
<member name="P:AxCtrls.AxCtrls.Controller">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Provides access to the IUnknown of the connection points.</para>
<property namespace="AxCtrls" class="TConnectionPoints">Controller</property> is the IUnknown interface reference of the connection points object. <property namespace="AxCtrls" class="TConnectionPoints">TConnectionPoints</property> aggregates several sub-objects that share this interface as a single controlling IUnknown. The IUnknown methods implemented in the sub-objects delegate to this <property namespace="AxCtrls" class="TConnectionPoints">Controller</property>.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">When the <property namespace="AxCtrls" class="TConnectionPoints">TConnectionPoints</property> object is created, its constructor is passed a controlling IUnknown. <property namespace="AxCtrls" class="TConnectionPoints">Controller</property> is initialized to this IUnknown in the constructor.</para>
<class namespace="axctrls">TActiveXControl</class> is an abstract class that provides the functionality to embed a VCL control into an ActiveX Container window.</para>
<class namespace="axctrls">TActiveXControl</class> defines the core behavior and interfaces required of an ActiveX control and connects that behavior to any VCL control derived from TWinControl. This allows the control to be embedded in any ActiveX container, including Internet Explorer, Visual Basic, PowerBuilder, Paradox, Borland C++, IntraBuilder and, of course, Delphi.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">To create a new ActiveX control class, use the ActiveX control wizard. The steps for building an ActiveX control are covered in the Developer's Guide or in the online help document, Developing COM-based applications.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The <class namespace="axctrls">TActiveXControl</class> class is derived from TAutoObject, therefore the object resulting is a COM object that supports COM-based Automation, a type library, and has a factory. In addition, <class namespace="axctrls">TActiveXControl</class> implements the following behaviors:</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">embedding in a container (site)</para>
<class namespace="axctrls">TActiveXControl</class> is an abstract class, and so cannot be instantiated. Instead, you must derive a new class from <class namespace="axctrls">TActiveXControl</class> to implement an ActiveX control. This derived class is called an implementation class. An implementation class derived from <class namespace="axctrls">TActiveXControl</class> normally implements an automation interface as well, to specify the object's properties and methods.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Ordinarily, you do not create an instance of an implementation class directly. Instead, you create a factory object in the initialization section of the unit that contains the class declaration. The factory object will then create the ActiveX control object when asked to by the system.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">In addition to the interfaces inherited from TAutoObject, <class namespace="axctrls">TActiveXControl</class> implements the following interfaces:</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Returns a requested COM interface on the object.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">ObjQueryInterface attempts to locate the interface specified by the IID parameter, and returns it in the Obj parameter. If the requested interface is found and returned, ObjQueryInterface returns S_OK.</para>
</comments>
</member>
<member name="M:AxCtrls.AxCtrls.PropRequestEdit">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Indicates whether a specified property can be changed.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Call PropRequestEdit to determine whether the property specified by the DispID (or PropertyName) parameter can be edited. PropRequestEdit uses the IPropertyNotifySink interface to determine whether the property can be changed, and returns True if it can.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">When possible, call this function with the DispID rather than the PropertyName because it is more efficient. Calling PropRequestEdit with the PropertyName first looks up the DispID from the given PropertyName before generating the event.</para>
</comments>
</member>
<member name="M:AxCtrls.AxCtrls.Initialize">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Creates the class factory and connection object for the <method namespace="axctrls" class="TActiveXControl">TActiveXControl</method>.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The Initialize method creates the class factory object and creates and encapsulates the VCL control.</para>
</comments>
</member>
<member name="M:AxCtrls.AxCtrls.PropChanged">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Generates an OnChanged event.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Call PropChanged when the property specified by the DispID (or PropertyName) parameter changes. PropChanged generates an OnChanged event using the IPropertyNotifySink interface.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">When possible, call this procedure with the DispID rather than the PropertyName because it is more efficient. Calling PropChanged with the PropertyName first looks up the DispID from the given PropertyName before generating the event.</para>
</comments>
</member>
<member name="M:AxCtrls.AxCtrls.Destroy">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Destroys an instance of <method namespace="axctrls" class="TActiveXControl">TActiveXControl</method>.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call Destroy directly in an application. Instead, call Free. Free checks that the ActiveX control reference is not nil before calling Destroy. Destroy frees the resources used to turn the Control into an active X control. It does not destroy the object referenced by the Control property.</para>
</comments>
</member>
<member name="P:AxCtrls.AxCtrls.Control">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Indicates the VCL implementation of the ActiveX control.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Control is the VCL control derived from TWinControl that implements the ActiveX control.</para>
<condition language="CBuilder">An ActiveX control is a COM object, which means the module it is implemented in must provide a factory object for the system to be able to create it. </condition>The <class namespace="axctrls">TActiveXControlFactory</class> class is a factory for ActiveX controls, which are implemented using the TActiveXControl <condition language="Delphi">abstract </condition>class.</para>
<condition language="Delphi">The ActiveX Control wizard adds</condition>
<condition language="CBuilder">To add</condition> an ActiveX control <condition language="CBuilder">factory to your program, create the </condition>factory object in the initialization section of the unit that defines the TActiveXControl object.</para>
</comments>
</member>
<member name="M:AxCtrls.AxCtrls.Create">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Creates and initializes a new <method namespace="axctrls" class="TActiveXControlFactory">TActiveXControlFactory</method> object.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The ComServer parameter is a pointer to the COM server object for the module containing the property page factory. This is normally a global variable, ComServer, declared in the ComServ unit.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The ActiveXControlClass parameter is the class object for the controller object that implements the ActiveX control. This object should be derived from TActiveXControl.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The WinControlClass parameter is the class object for the VCL control class that implements the Windows behavior of the control. This object should be derived from TWinControl.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The ClassID parameter is the GUID of the ActiveX control. Each COM object should have a unique GUID.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">LicStr is the license string for controls created with this factory. LicStr is empty if controls created with this factory are unlicensed. MiscStatus are the status bits that are stored in the registry.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">ThreadingModel specifies how calls to the created ActiveX control are serialized. This determines the value of the ThreadingModel property.</para>
</comments>
</member>
<member name="M:AxCtrls.AxCtrls.AddVerb">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">AddVerb adds a verb to the object's list of supported verbs.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use AddVerb to add a verb that host applications can apply to the ActiveX control. In the Verb parameter, pass a number to identify the verb. User-defined verbs are normally small positive numbers. </para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">In the VerbName parameter, pass the text to display when presenting the user with a choice of verbs. In some ActiveX (formerly called OLE) containers, the verb text is displayed in a popup menu when the user right-clicks on a control.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Placing an ampersand (&) before a character in this string causes the character to be displayed underlined in a pop-up menu.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">ActiveX defines the following commonly used verbs:</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">UpdateRegistry adds or removes registry entries for the object.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">This method is called to add or remove the control from the system registry. The default behavior of this method is to add normal ActiveX control registry keys, server file information, and type library information to the registry. It also adds the verbs added with the AddVerb method.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">If the Register parameter is <condition language="Delphi">True,</condition>
<condition language="CBuilder">true,</condition> the control should add its keys to the system registry. If it is <condition language="Delphi">False,</condition>
<condition language="CBuilder">false,</condition> the control should remove its keys from the registry.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Override this method if you want your control to store more information in the registry than the base implementation stores. If you <condition language="CBuilder">do </condition>override this method, be sure to call the inherited implementation in the correct order. When adding registry entries (that is, Register is <condition language="Delphi">True),</condition>
<condition language="CBuilder">true),</condition> call the inherited method before adding custom entries. When removing registry entries (that is, Register is <condition language="Delphi">False),</condition>
<condition language="CBuilder">false),</condition> call the inherited method after removing the custom entries.</para>
</comments>
</member>
<member name="M:AxCtrls.AxCtrls.Destroy">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Frees the instance of the <method namespace="axctrls" class="TActiveXControlFactory">TActiveXControlFactory</method>.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call <condition language="Delphi">Destroy</condition>
</condition> directly in an application. Factory objects are destroyed automatically when the server shuts down.</para>
</comments>
</member>
<member name="P:AxCtrls.AxCtrls.MiscStatus">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Represents a set of status bits that are stored in the registry.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">MiscStatus is stored in a registry entry under the CLSID entry for the class. This entry provides information about the ActiveX server to a container. The entry contains a set of binary flags for which ActiveX defines specific meanings. This entry is not required.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The following table lists the status bits that ActiveX control containers must recognize and support. For each status bit, it indicates whether container support is required for the feature and includes a brief description.</para>
<para>Indicates that the object should be activated when it becomes visible, even if it isn't UI-active.</para>
</td>
</tr>
<tr>
<td>
<para>IGNOREACTIVATEWHENVISIBLE</para>
</td>
<td>
<para>no</para>
</td>
<td>
<para>Needed for inactive and windowless control support.</para>
</td>
</tr>
<tr>
<td>
<para>INSIDEOUT</para>
</td>
<td>
<para>no</para>
</td>
<td>
<para>Indicates that the object should be activated inside-out (it can be in-place active as well as UI-active.) Usually used with embedded compound documents rather than with controls.</para>
</td>
</tr>
<tr>
<td>
<para>INVISIBLEATRUNTIME</para>
</td>
<td>
<para>yes</para>
</td>
<td>
<para>Designates a control that should be visible at design-time, but not at run-time.</para>
</td>
</tr>
<tr>
<td>
<para>ALWAYSRUN</para>
</td>
<td>
<para>yes</para>
</td>
<td>
<para>Indicates that the object should always be in the running state and that the default handler should not delay the loading of the object until the last possible moment.</para>
</td>
</tr>
<tr>
<td>
<para>ACTSLIKEBUTTON</para>
</td>
<td>
<para>no</para>
</td>
<td>
<para>Indicates that the object has button-like behavior. This allows the container to ask the control to draw itself as the default button or as a normal button.</para>
</td>
</tr>
<tr>
<td>
<para>ACTSLIKELABEL</para>
</td>
<td>
<para>no</para>
</td>
<td>
<para>Indicates that the object behaves like a label. This allows the container to handle the control properly when its label gets focus.</para>
</td>
</tr>
<tr>
<td>
<para>NOUIACTIVATE</para>
</td>
<td>
<para>yes</para>
</td>
<td>
<para>Indicates that the control has no user interface to activate. </para>
</td>
</tr>
<tr>
<td>
<para>ALIGNABLE</para>
</td>
<td>
<para>no</para>
</td>
<td>
<para>Indicates that the control can be aligned by the user.</para>
</td>
</tr>
<tr>
<td>
<para>SIMPLEFRAME</para>
</td>
<td>
<para>no</para>
</td>
<td>
<para>Indicates that the control is a simple holder for other controls. </para>
</td>
</tr>
<tr>
<td>
<para>SETCLIENTSITEFIRST</para>
</td>
<td>
<para>no</para>
</td>
<td>
<para>Indicates that the control needs to access the client site very early in its creation.</para>
</td>
</tr>
<tr>
<td>
<para>IMEMODE</para>
</td>
<td>
<para>no</para>
</td>
<td>
<para>Indicates that the control supports an Input Method Editor (IME) for entering extended characters. Typically, a container that supports IME provides the control with an extended IMEMode property.</para>
</td>
</tr>
</table>
</comments>
</member>
<member name="P:AxCtrls.AxCtrls.ToolboxBitmapID">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Designates the resource identifier of the ActiveX control.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use ToolboxBitmapID to obtain the resource ID of the bitmap that is used to represent the control on a design palette.</para>
</comments>
</member>
<member name="P:AxCtrls.AxCtrls.WinControlClass">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">WinControlClass is the class of the VCL control that implements the Windows behavior for the ActiveX control.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The factory object keeps a reference to the VCL control's class information so that it can ask the class object to manufacture a VCL control when the ActiveX control is created.</para>
</comments>
</member>
<member name="T:AxCtrls.TActiveFormControl">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">A COM object which provides the interfaces necessary to support an ActiveX control.</para>
<class namespace="axctrls">TActiveFormControl</class> acts as the bridge between a <condition language="Delphi">Delphi</condition>
<condition language="CBuilder">C++Builder</condition> form and the ActiveX control API.<condition language="Delphi"> It is a descendant of TActiveXControl which implements the necessary interfaces for an ActiveX control. It forwards the appropriate information to the ActiveForm.</condition>
<condition language="Delphi">This object is used internally by the DAX framework. Normally, you would not create an instance of this class.</condition>
</para>
</comments>
</member>
<member name="M:AxCtrls.AxCtrls.Invoke">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">I<condition language="CBuilder">nvoke i</condition>mplements the OLE Automation IDispatch Invoke function.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Call Invoke to access the property or method specified by the DispID parameter. The Flags parameter indicates whether the DispID refers to method (DISPATCH_METHOD), a property value that is being read (DISPATCH_PROPERTYGET), or a property value that is being set (DISPATCH_PROPERTYPUT or DISPATCH_PROPERTYPUTREF). The Params and ExcepInfo parameters hold parameters and exception information, respectively, and depend on the property or method identified by the DispID parameter.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Invoke returns S_OK if it is successful. Otherwise, it returns an error code defined by the IDispatch interface.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The ObjQueryInterface method takes an interface ID (the IID parameter) and returns the requested COM interface on the object.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The ObjQueryInterface method forwards the call first to the associated TActiveForm object if it supports the requested interface, otherwise it queries its own interface.</para>
</comments>
</member>
<member name="M:AxCtrls.AxCtrls.FreeOnRelease">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Supports the IVCLComObject interface.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">FreeOnRelease exists solely to support the IVCLComObject interface, and has an empty implementation.</para>
<condition language="CBuilder">InitializeControl creates</condition> the TActiveForm instance and establishes a link between itself and the TActiveForm referenced by the control properties.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">InitializeControl also instructs the TActiveForm object to perform any of its own initialization.</para>
</comments>
</member>
<member name="T:AxCtrls.TActiveFormFactory">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The ActiveFormFactory object is the class factory for TActiveForm.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The ActiveFormFactory object is the class factory responsible for creating instances of the TActiveFormControl object and therefore TActiveForm object.</para>
<condition language="Delphi">The ActiveForm wizard adds an ActiveForm factory object in the initialization section of the unit that defines the ActiveForm.</condition>
</para>
</comments>
</member>
<member name="M:AxCtrls.AxCtrls.GetIntfEntry">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Retrieves a pointer to the dispatch interface.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The GetIntfEntry method <condition language="Delphi">obtains an interface, if it exists, from the TActiveForm class. This is an internal method of the DAX framework. </condition>
<condition language="CBuilder">retrieves a pointer to the dispatch interface from the associated TActiveForm object.</condition>
<class namespace="AxCtrls">TPropertyPage</class> extends TCustomForm by adding the functionality needed to embed the form in an ActiveX property page dialog. It also adds methods to copy property values from the object to the form's controls, and vice versa.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">To implement your own property page for an ActiveX object, derive a new class from <class namespace="AxCtrls">TPropertyPage</class>, design the form, then override the UpdateObject and UpdatePropertyPage methods. The IDE provides an expert for creating a skeleton property page. See Creating a new property page for more information.</para>
<class namespace="AxCtrls">TPropertyPage</class> provides a helper method, Modified, that your form can call when any of the controls on the form are changed by the user. Calling the Modified method notifies the property dialog that the user has modified the object's properties. Normally this will enable the Apply button on the property dialog.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The property page maintains a connection to the object it is editing, using the OleObject or OleObjects property. This property is a Variant and can be used to read and write the object's properties.</para>
<method namespace="AxCtrls" class="TPropertyPage">Create</method>s an instance of <method namespace="AxCtrls" class="TPropertyPage">TPropertyPage</method>.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Call <method namespace="AxCtrls" class="TPropertyPage">Create</method> to instantiate a property page at runtime. Property pages added at design time are created automatically. Pass a single Component as an argument to assign the property page an owner that is responsible for freeing the property page.</para>
<method namespace="AxCtrls" class="TPropertyPage">Create</method> instantiates the helper objects used by the property page.</para>
</comments>
</member>
<member name="M:AxCtrls.AxCtrls.Modified">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Notifies the property page's container that the user has edited one of the controls on the page.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Call <method namespace="AxCtrls" class="TPropertyPage">Modified</method> from the controls on the property page when their values change. The property dialog will enable the Apply button in response to this method call.</para>
<method namespace="AxCtrls" class="TPropertyPage">UpdateObject</method> is called to copy property values from the controls on the form to the ActiveX Object.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Override this method to copy values from the controls on the property page to properties of the ActiveX Object. Cast the value of the OleObject property to an IDispatch interface to set the property values.</para>
<method namespace="AxCtrls" class="TPropertyPage">UpdateObject</method> is the reverse of UpdatePropertyPage, which copies the property values from the ActiveX Object to controls on the form.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Copies the property values from the ActiveX object to controls on the property page.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">This method is normally called when the property page is first shown, or when the user undoes changes to the property dialog box. The <method namespace="AxCtrls" class="TPropertyPage">UpdatePropertyPage</method> method implemented by <method namespace="AxCtrls" class="TPropertyPage">TPropertyPage</method> does nothing. Override this method to copy the property values from the ActiveX object to the controls on the property page.</para>
<method namespace="AxCtrls" class="TPropertyPage">UpdatePropertyPage</method> is the reverse of UpdateObject, which copies the property values from controls on the property page to the ActiveX object.</para>
</comments>
</member>
<member name="M:AxCtrls.AxCtrls.EnumCtlProps">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Looks for a PropType type property in a control on the form.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <method namespace="AxCtrls" class="TPropertyPage">EnumCtlProps</method> to locate all properties of the ActiveX object specified by OleObject that use the GUID specified by the PropType parameter. The names of all properties of the specified type are added to the PropNames list. The property names can be used subsequently to read or write property values using the IDispatch interface of the ActiveX object.</para>
<method namespace="AxCtrls" class="TPropertyPage">EnumCtlProps</method> does not clear the PropNames list before adding property names. Applications should clear the string list before calling <method namespace="AxCtrls" class="TPropertyPage">EnumCtlProps</method> to avoid mistaking entries that were previously in the list for properties of the ActiveX object.</para>
</note>
</comments>
</member>
<member name="M:AxCtrls.AxCtrls.Destroy">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Frees an instance of <method namespace="AxCtrls" class="TPropertyPage">TPropertyPage</method>.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call <method namespace="AxCtrls" class="TPropertyPage">Destroy</method> directly in an application. Instead, call Free, which verifies that the property page reference is not nil, and only then calls <method namespace="AxCtrls" class="TPropertyPage">Destroy</method>.</para>
<method namespace="AxCtrls" class="TPropertyPage">Destroy</method> frees any associated OLE objects before freeing the object instance.</para>
</comments>
</member>
<member name="P:AxCtrls.AxCtrls.OleObject">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Contains a reference to the first item in the array of ActiveX controls being edited by the page.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Property pages have the ability to be "hooked up to" multiple ActiveX controls, usually by multi-selecting the ActiveX controls in the form designer, and right clicking to invoke the property pages. <property namespace="AxCtrls" class="TPropertyPage">OleObject</property> points to the first control in the array. To access other ActiveX controls, use the property, <property namespace="AxCtrls" class="TPropertyPage">OleObject</property>s.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Cast the value of <property namespace="AxCtrls" class="TPropertyPage">OleObject</property> to the appropriate interface, such as IUnknown or IDispatch, and use the methods of the interface to access the property values and methods of the control.</para>
</comments>
</member>
<member name="P:AxCtrls.AxCtrls.OleObjects">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">An array of Dispatch IDs for each ActiveX control being edited by the page.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Property pages have the ability to be "hooked up to" multiple ActiveX controls, usually by multi-selecting the ActiveX controls in the form designer, and right clicking to invoke the property pages. Cast the value of an entry from the <property namespace="AxCtrls" class="TPropertyPage">OleObjects</property> Items property to the appropriate interface, such as IUnknown or IDispatch, and use the methods of the interface to access the property values and methods of the control.</para>
<class namespace="Axctrls">TPropertyPageImpl</class> implements the IPropertyPage interface to provide the interfaces needed to support an ActiveX property page.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Applications do not create <class namespace="Axctrls">TPropertyPageImpl</class> objects; they are created automatically when the user creates an ActiveX control object by using the ActiveX control or ActiveForms wizard. </para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">This class is used internally by TPropertyPage to provide a bridge between a Delphi form and the ActiveX property page API. <class namespace="Axctrls">TPropertyPageImpl</class> implements the property page portion of the COM object while TActiveXPropertyPage implements the COM server portion. </para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Initializes the associated property page.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call <method namespace="Axctrls" class="TPropertyPageImpl">InitPropertyPage</method>, TActiveXPropertyPage calls this method after creating both the TPropertyPage and <method namespace="Axctrls" class="TPropertyPageImpl">TPropertyPageImpl</method> objects. It sets the <method namespace="Axctrls" class="TPropertyPageImpl">TPropertyPageImpl</method>'s PropertyPage property, and then calls <method namespace="Axctrls" class="TPropertyPageImpl">InitPropertyPage</method>. <method namespace="Axctrls" class="TPropertyPageImpl">InitPropertyPage</method> sets an internal field of TPropertyPage so that the TPropertyPage can locate its associated <method namespace="Axctrls" class="TPropertyPageImpl">TPropertyPageImpl</method>. In addition, <method namespace="Axctrls" class="TPropertyPageImpl">InitPropertyPage</method> initializes some properties on the property page.</para>
<class namespace="axctrls">TActiveXPropertyPage</class> represents a COM object that provides the interfaces for supporting an ActiveX property page.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">This class is used internally by the TPropertyPage control to provide a bridge between a <condition language="Delphi">Delphi</condition>
<condition language="CBuilder">C++Builder</condition> form and the ActiveX property page API.</para>
</comments>
</member>
<member name="M:AxCtrls.AxCtrls.Initialize">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Initializes the instance of a <method namespace="axctrls" class="TActiveXPropertyPage">TActiveXPropertyPage</method> descendant.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Override the Initialize method to initialize an instance of a TPropertyPage descendant before it is used.</para>
</comments>
</member>
<member name="M:AxCtrls.AxCtrls.Destroy">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Frees the instance of the <method namespace="axctrls" class="TActiveXPropertyPage">TActiveXPropertyPage</method>.</para>
<condition language="Delphi">Do not call Destroy</condition> directly in an application. Instead, call Free. Free checks that the TPropertyPage reference is not nil before calling <condition language="Delphi">Destroy.</condition>
<condition language="Delphi">PropertyPageImpl is the COM server portion of the implementation of the IPropertyPage interface. Applications do not create the TPropertyPageImpl objects; they are created automatically when the user creates an ActiveX control object by using the ActiveX control or ActiveForms wizard. </condition>
<property namespace="axctrls" class="TActiveXPropertyPage">TActiveXPropertyPage</property> implements the COM server portion of the COM object while TPropertyPageImpl implements the property page portion.</condition>
<class namespace="axctrls">TActiveXPropertyPageFactory</class> implements a COM factory for an ActiveX property page.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">A property page is a COM object, which means the module it is implemented in must provide a factory so that the system can create the object. <class namespace="axctrls">TActiveXPropertyPageFactory</class> is a factory for ActiveX property pages, which are implemented by subclassing TPropertyPage.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">For more information about COM factories, see TComObjectFactory.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">To add a property page factory to a program, create the factory object in the initialization section of the unit that defines the property page form.</para>
</comments>
</member>
<member name="M:AxCtrls.AxCtrls.Create">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Creates a property page factory and binds that factory to property page class.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The ComServer parameter is a pointer to the COM server object for the ActiveX library. This is normally the global variable, ComServer, declared in the ComServ unit.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The PropertyPageClass parameter is the class object of the property page's implementing class. The implementing class must be derived form TPropertyPage. This class implements the form that is to appear in the property dialog.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The ClassID parameter is a GUID that identifies the property page's class. Each property page should have its own GUID. See the <condition language="Delphi">Developer's</condition>
<condition language="CBuilder">Programmer's</condition> Guide for information on how to create a GUID.</para>
<class namespace="axctrls">TCustomAdapter</class> is a base class for objects that bind VCL objects to COM interfaces.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not create objects of this class. Instead, call the GetOleFont procedure to create the binding between a TFont and an OLE font object or GetOlePicture to create the binding between a TPicture and an OLE picture object.</para>
</comments>
</member>
<member name="M:AxCtrls.AxCtrls.Create">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Constructs an instance of the custom adapter control.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Never create an object of this class, only its descendants, such as TFontAdapter or TPictureAdapter.</para>
</comments>
</member>
<member name="M:AxCtrls.AxCtrls.Changed">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Responds when the VCL representation of the OLE object changes.</para>
<method namespace="axctrls" class="TCustomAdapter">Changed</method> is called automatically so that the associated OLE object can be updated to reflect changes made to the corresponding VCL object. In <method namespace="axctrls" class="TCustomAdapter">TCustomAdapter</method>, <method namespace="axctrls" class="TCustomAdapter">Changed</method> calls ReleaseOleObject so that the OLE object can be re-acquired to reflect the changes in the VCL object. Descendants of <method namespace="axctrls" class="TCustomAdapter">TCustomAdapter</method> override <method namespace="axctrls" class="TCustomAdapter">Changed</method> to use the OLE interface to make appropriate changes.</para>
<method namespace="axctrls" class="TCustomAdapter">ConnectOleObject</method> is used internally to associate the adapter with the OLE object it represents.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Releases the associated OLE interface, allowing it to decrease its reference count.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">When implementing a descendant of <method namespace="axctrls" class="TCustomAdapter">TCustomAdapter</method>, call <method namespace="axctrls" class="TCustomAdapter">ReleaseOleObject</method> when the adapter no longer needs the OLE object.</para>
</comments>
</member>
<member name="M:AxCtrls.AxCtrls.Update">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Provides the interface for a method that responds to changes in the OLE object.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Descendants of <method namespace="axctrls" class="TCustomAdapter">TCustomAdapter</method> override <method namespace="axctrls" class="TCustomAdapter">Update</method> to modify the associated VCL object so that it reflects changes in the corresponding OLE object. It is the converse of the Changed method.</para>
<method namespace="axctrls" class="TCustomAdapter">Destroy</method>s the custom adapter object.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call <method namespace="axctrls" class="TCustomAdapter">Destroy</method> directly. Instead, use the Free method, which checks that the adapter is not nil before calling <method namespace="axctrls" class="TCustomAdapter">Destroy</method>.</para>
<class namespace="axctrls">TAdapterNotifier</class> provides the binding between a VCL type object and comparable OLE type object.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Descendants of TCustomAdapter use <class namespace="axctrls">TAdapterNotifier</class> to bind VCL utility objects (such as TFont) with corresponding OLE objects. For example, TFontAdapter uses <class namespace="axctrls">TAdapterNotifier</class> to bind a TFont object with an OLE font object.</para>
<method namespace="axctrls" class="TAdapterNotifier">Create</method>s an instance of a <method namespace="axctrls" class="TAdapterNotifier">TAdapterNotifier</method> object.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">You would normally never create an object of this class. <method namespace="axctrls" class="TAdapterNotifier">TAdapterNotifier</method> objects are created by and bound to a descendant of TCustomAdapter.</para>
<class namespace="axctrls">TFontAdapter</class> is a helper class used to connect a TFont object to an OLE font object.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">To create an instance of a <class namespace="axctrls">TFontAdapter</class>, call the global GetOleFont procedure. GetOleFont creates the binding between a TFont object and an OLE font interface.</para>
<method namespace="axctrls" class="TFontAdapter">Create</method>s an instance of the font adapter control.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Applications do not normally create objects of this class. Instead, they call the GetOleFont procedure, which creates the binding between a TFont and an OLE font object.</para>
</comments>
</member>
<member name="M:AxCtrls.AxCtrls.GetOleFont">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Obtains the IFontDisp interface from the associated OLE object.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">ActiveX controls that use <method namespace="axctrls" class="TFontAdapter">TFontAdapter</method> call <method namespace="axctrls" class="TFontAdapter">GetOleFont</method> to obtain the interface that corresponds to the adapter's TFont object. If the OLE object for the font does not exist, <method namespace="axctrls" class="TFontAdapter">GetOleFont</method> creates it.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The IFontDisp interface is returned as the OleFont parameter.</para>
</comments>
</member>
<member name="M:AxCtrls.AxCtrls.SetOleFont">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Associates the adapter with the OLE object represented by a specified interface.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">ActiveX controls that use <method namespace="axctrls" class="TFontAdapter">TFontAdapter</method> call <method namespace="axctrls" class="TFontAdapter">SetOleFont</method> to associate the adapter with the interface passed as the OleFont parameter.</para>
</comments>
</member>
<member name="M:AxCtrls.AxCtrls.Changed">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Updates the associated IFont interface with the new properties of the font object.</para>
<method namespace="axctrls" class="TFontAdapter">Changed</method> is called automatically when the TFont object changes. It ensures that the associated OLE interface is updated.</para>
<method namespace="axctrls" class="TFontAdapter">Update</method> is called automatically when the associated OLE object changes. It ensures that the corresponding TFont object reflects those changes.</para>
<class namespace="axctrls">TPictureAdapter</class> connects a native TPicture object to an OLE picture object.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">To create an instance of a <class namespace="axctrls">TPictureAdapter</class>, call the GetOlePicture procedure, which creates the binding between a TPicture and an OLE picture object.</para>
<method namespace="axctrls" class="TPictureAdapter">Create</method> constructs an instance of the picture adapter control.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call the constructor for this class directly. Instead, call the GetOlePicture procedure to create the binding between a TPicture and an OLE picture.</para>
<class namespace="AxCtrls">TOleGraphic</class> is a graphical container for icons, metafiles and bitmaps used in ActiveX controls. <class namespace="AxCtrls">TOleGraphic</class> is used internally to expose an IPicture interface as the image of the TPicture property of an ActiveX control. Because <class namespace="AxCtrls">TOleGraphic</class> is a wrapper for OLE interfaces, it cannot be used to load or save information to a file.</para>
</comments>
</member>
<member name="M:AxCtrls.AxCtrls.Assign">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Copies an IPicture to the OLE graphic object.</para>
<method namespace="AxCtrls" class="TOleGraphic">Assign</method> copies the IPicture contained in Source to the OLE graphic object. <method namespace="AxCtrls" class="TOleGraphic">Assign</method> then calls the inherited <method namespace="AxCtrls" class="TOleGraphic">Assign</method>. The IPicture can be a bitmap, metafile or icon image.</para>
</comments>
</member>
<member name="M:AxCtrls.AxCtrls.LoadFromFile">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Prevents OleGraphics from trying to load from a file.</para>
<method namespace="AxCtrls" class="TOleGraphic">LoadFromFile</method> is overridden in <method namespace="AxCtrls" class="TOleGraphic">TOleGraphic</method> so that it will not load a graphic from a file. Attempting to do so is not appropriate for an IPicture.</para>
</comments>
</member>
<member name="M:AxCtrls.AxCtrls.LoadFromStream">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Loads an IPicture interface from a stream into the OLE graphic object.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">To use <method namespace="AxCtrls" class="TOleGraphic">LoadFromStream</method> specify the stream from which the OLE graphic is to be loaded as the value of Stream.</para>
</comments>
</member>
<member name="M:AxCtrls.AxCtrls.SaveToStream">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Saves the OLE graphic to a stream.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <method namespace="AxCtrls" class="TOleGraphic">SaveToStream</method> to save the OLE graphic to the stream specified by the Stream parameter. <method namespace="AxCtrls" class="TOleGraphic">SaveToStream</method> uses the IPersistStream interface of the graphic write it to the stream.</para>
<method namespace="AxCtrls" class="TOleGraphic">LoadFromClipboardFormat</method> is called if the OLE graphic is registered with the TPicture object using the RegisterClipboardFormat method.</para>
<method namespace="AxCtrls" class="TOleGraphic">LoadFromClipboardFormat</method> replaces the current image with the data pointed to by the AData parameter. The palette for the OLE graphic is specified by the APalette parameter.</para>
</comments>
</member>
<member name="P:AxCtrls.AxCtrls.MMHeight">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Indicates the height of the OLE graphic in 0.01 millimeter units.</para>
<property namespace="AxCtrls" class="TOleGraphic">MMHeight</property> is used for a more accurate reading of the vertical size of the graphic. The Height property, by contrast, is always in screen device pixel units; to avoid loss of precision in converting between device pixels and millimeters, set or read the dimensions in millimeters with <property namespace="AxCtrls" class="TOleGraphic">MMHeight</property>.</para>
</comments>
</member>
<member name="P:AxCtrls.AxCtrls.MMWidth">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Indicates the width of the OLE graphic in 0.01 millimeter units.</para>
<property namespace="AxCtrls" class="TOleGraphic">MMWidth</property> is used for a more accurate reading of the horizontal size of the graphic. The Width property, by contrast, is always in screen device pixel units; to avoid loss of precision in converting between device pixels and millimeters, set or read the dimensions in millimeters with <property namespace="AxCtrls" class="TOleGraphic">MMWidth</property>.</para>
</comments>
</member>
<member name="P:AxCtrls.AxCtrls.Picture">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Specifies the interface reference for which the OLE graphic is a container.</para>
<class namespace="AxCtrls">TStringsAdapter</class> is a helper class used to allow a TStrings object to implement an IStrings interface for use with OLE.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use a strings adapter to adapt a TStrings object so that it supports the IStrings interface. To do so, create the strings adapter by calling GetOleStrings, passing the TStrings object as a parameter. Once the strings adapter is instantiated for a TStrings object, the StringsAdapter property of the TStrings object can be used to interact with the TStrings object through an IStrings interface. </para>
<method namespace="AxCtrls" class="TStringsAdapter">Create</method>s an instance of the string adapter control.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call the <method namespace="AxCtrls" class="TStringsAdapter">Create</method> method directly. Instead, call the GetOleStrings procedure to adapt a TStrings object so that it supports the IStrings interface.</para>
<class namespace="AxCtrls">TReflectorWindow</class> is for internal use only. Applications should never instantiate this class. It is used to reflect certain messages to an ActiveX control.</para>
<method namespace="AxCtrls" class="TReflectorWindow">Create</method>s an instance of <method namespace="AxCtrls" class="TReflectorWindow">TReflectorWindow</method>.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Applications never have to instantiate <method namespace="AxCtrls" class="TReflectorWindow">TReflectorWindow</method>.</para>
</comments>
</member>
<member name="M:AxCtrls.ParkingWindow">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Provides a temporary parent window for ActiveX controls when the container is not ready to act as a parent.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Call <routine namespace="AxCtrls">ParkingWindow</routine> to get the window handle of the parking window. This can be used as a temporary parent to activeX controls until the host application's container is ready.</para>
</comments>
</member>
<member name="M:AxCtrls.EnumDispatchProperties">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Fills a TStringList will all the property names and DispIDs in a specified IDispatch interface.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <routine namespace="AxCtrls">EnumDispatchProperties</routine> to get the names of the properties supported by an IDispatch interface. The Dispatch parameter is an instance of the IDispatch interface. The PropType and VTCode parameters allow the caller to limit the list to only those properties that match a particular GUID and type identifier. To see all properties of the IDispatch interface, set PropType to GUID_NULL and VTCode to VT_EMPTY.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The property names that the IDispatch interface supports are added to the list passed in as the PropList parameter.</para>
</comments>
</member>
<member name="M:AxCtrls.GetOleFont">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Creates an OLE font object that is directly mapped to a native TFont.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">OLE conventions implement fonts as automation objects that contain the properties of the font. This routine creates an adapter object that maps the properties of a TFont object into an OLE font object, thereby allowing an OLE client to access the font properties of a VCL control. Call this function when you implement a method that retrieves a TFont value from a VCL object and returns it as an OLE font.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The Font parameter is a pointer to the native TFont. This can be the Font property of a VCL control. The OLE font is returned in the OleFont parameter. The resulting OLE font object is a direct connection to the native VCL font, so changing the OLE font's properties will change the TFont's properties, and vice-versa.</para>
</comments>
</member>
<member name="M:AxCtrls.SetOleFont">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Connects an OLE font object to a TFont object and copies the properties of the OLE font object to the TFont.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">OLE conventions implement fonts as automation objects that contain the properties of the font. This routine associates an OLE font object (the OleFont parameter) with a native VCL font (the Font parameter), allowing the font to be accessed by both OLE programs and VCL programs. The TFont object is initialized to have the same properties as OleFont.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Call this method when you implement an automation method that takes an OLE font as a parameter, and which needs to pass the font along as a native TFont object.</para>
</comments>
</member>
<member name="M:AxCtrls.GetOlePicture">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Creates an OLE picture object that is directly mapped to a native TPicture.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">OLE conventions implement pictures as automation objects that contain the properties of the picture. This routine creates an adapter object that maps the properties of a native VCL TPicture into an OLE picture object, thereby allowing an OLE client to access the picture properties of a VCL control. Call this function when you implement a method that retrieves a TPicture value from a VCL object and returns it as an OLE picture.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The Picture parameter is a pointer to the native TPicture. This can be the Picture property of a VCL control. The OLE picture is returned in the OlePicture parameter. The resulting OLE picture object is a direct connection to the native VCL picture, so changing the OLE picture's properties will change the TPicture's properties, and vice-versa.</para>
</comments>
</member>
<member name="M:AxCtrls.SetOlePicture">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Connects an OLE picture object to a TPicture object, and copies the properties of the OLE picture object to the TPicture.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">OLE conventions implement pictures as automation objects that contain the properties of the picture. This routine associates an OLE picture object (the OlePicture parameter) with a native VCL picture (the Picture parameter), allowing the picture to be accessed by both OLE programs and VCL programs. The TPicture object is initialized to have the same properties as OlePicture.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Call this method when you implement an automation method that takes an OLE picture as a parameter, and which needs to pass the picture along as a native TPicture object.</para>
</comments>
</member>
<member name="M:AxCtrls.GetOleStrings">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Implements a TStrings object as an IStrings interface for use by OLE objects.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">When the <routine namespace="AxCtrls">GetOleStrings</routine> function is called, the Strings parameter is implemented as an IStrings and assigned to the StringsAdapter (TStrings) property. The IStrings interface is returned as the OleStrings parameter.</para>
</comments>
</member>
<member name="M:AxCtrls.SetOleStrings">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Uses an IStrings interface to assign the contents of a TStrings object.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <routine namespace="AxCtrls">SetOleStrings</routine> to update a TStrings object so that it matches the strings supplied by an IStrings interface. The Strings parameter is the TStrings object to update. The OleStrings parameter is the interface used as a source.</para>
<class namespace="Stdctrls">TCustomGroupBox</class> is the base class for all group-box components.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Group boxes are visual components that act as containers for sets of related controls, such as radio buttons. Group boxes may also contain other group boxes. <class namespace="Stdctrls">TCustomGroupBox</class> is the class from which all group-box componentsΓÇöincluding TGroupBox, TRadioGroup, and TDBRadioGroupΓÇödescend.</para>
<method namespace="Stdctrls" class="TCustomGroupBox">Create</method>s and initializes a <method namespace="Stdctrls" class="TCustomGroupBox">TCustomGroupBox</method> instance.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Call <method namespace="Stdctrls" class="TCustomGroupBox">Create</method> to instantiate a group box at runtime. Group boxes placed on forms at design time are created automatically.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">AOwner is the component, typically a form, that is responsible for freeing the group box. It becomes the value of the Owner property.</para>
<method namespace="Stdctrls" class="TCustomGroupBox">AdjustClientRect</method> is called internally when the group box needs accurate information on where to place child controls within the client area. It indents the client rectangle slightly so that child controls are not placed on the frame (or caption) of the group box.</para>
</comments>
</member>
<member name="M:StdCtrls.StdCtrls.CreateParams">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Initializes a window-creation parameter record passed in the Params parameter.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The CreateWnd method calls <method namespace="Stdctrls" class="TCustomGroupBox">CreateParams</method> to initialize the parameters it passes to CreateWindowHandle. Override <method namespace="Stdctrls" class="TCustomGroupBox">CreateParams</method> to customize the way a group box creates its Windows representation. When overriding <method namespace="Stdctrls" class="TCustomGroupBox">CreateParams</method>, always call the inherited method first to set the default values, then make any desired adjustments.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Specify the parameter record as the value of the Params parameter. The T<method namespace="Stdctrls" class="TCustomGroupBox">CreateParams</method> type is a data structure holding information needed when telling Windows to create a window handle. The fields of a T<method namespace="Stdctrls" class="TCustomGroupBox">CreateParams</method> record become the parameters to a call to the CreateWindowEx API function.</para>
<method namespace="Stdctrls" class="TCustomGroupBox">TCustomGroupBox</method> adjusts the window style by turning off the CS_HREDRAW and CS_VREDRAW flags.</para>
</comments>
</member>
<member name="M:StdCtrls.StdCtrls.Paint">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Renders the onscreen image of the group box.</para>
<class namespace="Stdctrls">TGroupBox</class> represents a Windows group box.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The <class namespace="Stdctrls">TGroupBox</class> component represents a standard Windows group box, used to group related controls on a form. When another control component is placed within a group box, the group box becomes the parent of that component.</para>
<class namespace="Stdctrls">TCustomLabel</class> is the base class for non-windowed controls that display text on a form.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <class namespace="Stdctrls">TCustomLabel</class> as a base class when defining objects that display text that users can't edit. <class namespace="Stdctrls">TCustomLabel</class> introduces several new properties and methods to control the appearance of the text.</para>
<class namespace="Stdctrls">TCustomLabel</class> is not a descendant of TWinControl, so it does not have its own window and can't receive direct input from the keyboard. To define an object that responds to direct keyboard input in addition to displaying text, use TCustomStaticText as a base class.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not create instances of <class namespace="Stdctrls">TCustomLabel</class>. To put a label on a form, use a TLabel object.</para>
</comments>
</member>
<member name="M:StdCtrls.StdCtrls.GetLabelText">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Returns the value of the Caption property.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Call <method namespace="Stdctrls" class="TCustomLabel">GetLabelText</method> to obtain the string that appears as the text of the label.</para>
<method namespace="Stdctrls" class="TCustomLabel">Create</method>s and initializes an instance of <method namespace="Stdctrls" class="TCustomLabel">TCustomLabel</method>.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Call <method namespace="Stdctrls" class="TCustomLabel">Create</method> to create an instance of <method namespace="Stdctrls" class="TCustomLabel">TCustomLabel</method> at runtime. Labels placed on forms at design time are created automatically.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">AOwner is a component, typically the form, that is responsible for freeing the label.</para>
</comments>
</member>
<member name="M:StdCtrls.StdCtrls.AdjustBounds">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Resizes the label when the text changes.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">When the text in the label or the font changes, <method namespace="Stdctrls" class="TCustomLabel">AdjustBounds</method> is implicitly called. It redraws the text in the client area, and then resizes the label if the AutoSize property is true.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">When WordWrap is true, the width of the label is fixed. If AutoSize is also true, changes to the text cause the label to change in height. When AutoSize is true and WordWrap is false, the height of the label is determined by the font, and changes to the text cause the label to change in width.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Override <method namespace="Stdctrls" class="TCustomLabel">AdjustBounds</method> to make additional adjustments when the text changes.</para>
</comments>
</member>
<member name="M:StdCtrls.StdCtrls.DoDrawText">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Renders the text in the client area.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">When the label needs to draw itself, <method namespace="Stdctrls" class="TCustomLabel">DoDrawText</method> is implicitly called. <method namespace="Stdctrls" class="TCustomLabel">DoDrawText</method> uses the Windows API function, DrawText, to render the caption in the client area. </para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The first parameter, Rect, specifies the boundaries of the text within the client area. The second parameter, Flags, specifies how the text is aligned within those boundaries, how tab characters are handled, etc. See the Microsoft Windows API DrawText function for all the possible values of Flags.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Override <method namespace="Stdctrls" class="TCustomLabel">DoDrawText</method> to render text differently.</para>
</comments>
</member>
<member name="M:StdCtrls.StdCtrls.Loaded">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Adjusts the size of the label when it is first loaded. .</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The protected <method namespace="Stdctrls" class="TCustomLabel">Loaded</method> method is called immediately after a saved version of the form that contains the label is loaded into memory. <method namespace="Stdctrls" class="TCustomLabel">TCustomLabel</method> uses this method to adjust the size of the label to the text it contains if the AutoSize property is true.</para>
</comments>
</member>
<member name="M:StdCtrls.StdCtrls.Notification">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Responds to notifications when objects are about to be created or destroyed.</para>
<method namespace="Stdctrls" class="TCustomLabel">Notification</method> is called automatically when components are created or destroyed. After calling the inherited method, <method namespace="Stdctrls" class="TCustomLabel">Notification</method> checks whether the windowed control specified by the FocusControl property is about to be destroyed. If the windowed control is going away, <method namespace="Stdctrls" class="TCustomLabel">Notification</method> sets the FocusControl property to nil (Delphi) or NULL (C++).</para>
</comments>
</member>
<member name="M:StdCtrls.StdCtrls.Paint">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Draws the image of the label.</para>
<method namespace="Stdctrls" class="TCustomLabel">Paint</method> is called automatically when the label receives a WM_PAINT message from its Parent. <method namespace="Stdctrls" class="TCustomLabel">Paint</method> writes the text returned by the GetLabelText method.</para>
</comments>
</member>
<member name="P:StdCtrls.StdCtrls.Alignment">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Controls the horizontal placement of the text within the label.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Set <property namespace="Stdctrls" class="TCustomLabel">Alignment</property> to specify how the text of the label is justified within the ClientRect of the label control.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The effect of the <property namespace="Stdctrls" class="TCustomLabel">Alignment</property> property is more obvious if the WordWrap property is true and the label includes more than one line of text.</para>
</comments>
</member>
<member name="P:StdCtrls.StdCtrls.AutoSize">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Determines whether the size of the label automatically resizes to accommodate the text. </para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <property namespace="Stdctrls" class="TCustomLabel">AutoSize</property> to make the label adjust its size automatically so the client area accommodates the height and width of the text. When <property namespace="Stdctrls" class="TCustomLabel">AutoSize</property> is false, the label is fixed in size. When <property namespace="Stdctrls" class="TCustomLabel">AutoSize</property> is true, the size of the label readjusts whenever the text changes. The size of the label is also readjusts when the Font property changes.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">When WordWrap is true, the width of the label is fixed. If <property namespace="Stdctrls" class="TCustomLabel">AutoSize</property> is also true, changes to the text cause the label to change in height. When <property namespace="Stdctrls" class="TCustomLabel">AutoSize</property> is true and WordWrap is false, the font determines the height of the label, and changes to the text cause the label to change in width.</para>
</comments>
</member>
<member name="P:StdCtrls.StdCtrls.FocusControl">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Designates a windowed control associated with the label.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Set <property namespace="Stdctrls" class="TCustomLabel">FocusControl</property> to the windowed control that should receive focus when the user presses the accelerator key specified by the label. Specify an accelerator key by preceding a character in the label text with an ampersand (&) and setting the ShowAccelChar property to true.</para>
</comments>
</member>
<member name="P:StdCtrls.StdCtrls.ShowAccelChar">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Determines how an ampersand in the label text is displayed.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Set <property namespace="Stdctrls" class="TCustomLabel">ShowAccelChar</property> to true to allow the label to display an underlined accelerator key value. When <property namespace="Stdctrls" class="TCustomLabel">ShowAccelChar</property> is true, any character preceded by an ampersand (&) appears underlined. If the FocusControl property is set, the windowed control specified by the FocusControl property receives input focus when the user types that underlined character. To display an ampersand when <property namespace="Stdctrls" class="TCustomLabel">ShowAccelChar</property> is true, use two ampersands (&&) to stand for the single ampersand that is displayed.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Set <property namespace="Stdctrls" class="TCustomLabel">ShowAccelChar</property> to false to display the label text with all ampersands appearing as ampersands. When <property namespace="Stdctrls" class="TCustomLabel">ShowAccelChar</property> is false, the value of the FocusControl property is not used.</para>
</comments>
</member>
<member name="P:StdCtrls.StdCtrls.Transparent">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Specifies whether controls that sit below the label on a form can be seen through the label.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Set <property namespace="Stdctrls" class="TCustomLabel">Transparent</property> to true to prevent the label from obscuring other controls on the form. For example, if the label is used to add text to a graphic, set <property namespace="Stdctrls" class="TCustomLabel">Transparent</property> to true so that the label does not stand out as a separate object.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Writing text so that the background is transparent is slower than writing text when <property namespace="Stdctrls" class="TCustomLabel">Transparent</property> is false. If the label is not obscuring a complicated image, performance can be improved by setting the background color of the label to match the object beneath it and setting <property namespace="Stdctrls" class="TCustomLabel">Transparent</property> to false.</para>
</comments>
</member>
<member name="P:StdCtrls.StdCtrls.Layout">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Specifies the vertical placement of the text within the label.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Set <property namespace="Stdctrls" class="TCustomLabel">Layout</property> to specify how the text of the label is placed within the ClientRect of the label control. <property namespace="Stdctrls" class="TCustomLabel">Layout</property> is the vertical analog to the Alignment property.</para>
</comments>
</member>
<member name="P:StdCtrls.StdCtrls.WordWrap">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Specifies whether the label text wraps when it is too long for the width of the label.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Set <property namespace="Stdctrls" class="TCustomLabel">WordWrap</property> to true to allow the label to display multiple line of text. When <property namespace="Stdctrls" class="TCustomLabel">WordWrap</property> is true, text that is too wide for the label control wraps at the right margin and continues in additional lines.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Set <property namespace="Stdctrls" class="TCustomLabel">WordWrap</property> to false to limit the label to a single line. When <property namespace="Stdctrls" class="TCustomLabel">WordWrap</property> is false, text that is too wide for the label appears truncated.</para>
</comments>
</member>
<member name="E:StdCtrls.StdCtrls.OnMouseEnter">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Occurs when the mouse pointer moves over the label.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Write an <event namespace="Stdctrls" class="TCustomLabel">OnMouseEnter</event> event handler to take specific action when the user moves the mouse over the label. For example, you can use this event to change the font color when the mouse is over the label, and then use the OnMouseLeave event to change it back when the mouse moves off the label.</para>
</comments>
</member>
<member name="E:StdCtrls.StdCtrls.OnMouseLeave">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Occurs when the mouse pointer moves off from over the label.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Write an <event namespace="Stdctrls" class="TCustomLabel">OnMouseLeave</event> event handler to take specific action when the user moves the mouse off the label. For example, you can use this event to undo changes that were made in an OnMouseEnter event handler.</para>
<class namespace="StdCtrls">TLabel</class> is a nonwindowed control that displays text on a form.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <class namespace="StdCtrls">TLabel</class> to add text that the user can't edit to a form. This text can be used to label another control, and can set focus to that control when the user types an accelerator key.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Because <class namespace="StdCtrls">TLabel</class> is not a descendant of TWinControl, it does not have its own window and can't receive direct input from the keyboard. To add an object to a form that can respond to keyboard input (other than setting focus to another object when an accelerator key is typed) in addition to displaying text, use TStaticText.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">To add an object to a form that displays text that a user can scroll or edit, use TEdit.</para>
<class namespace="StdCtrls">TCustomEdit</class> encapsulates the behavior common to all components for editing text by introducing methods and properties that provide:</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Basic text editing functions such as selecting text, modifying selected text, and case conversions.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Ability to respond to changes in the contents of the text.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Access control of the text for making it read-only or introducing a password character to hide the actual value.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not create instances of <class namespace="StdCtrls">TCustomEdit</class>. Use <class namespace="StdCtrls">TCustomEdit</class> as a base class when declaring control objects that permit the user to enter or modify text. Properties and methods of <class namespace="StdCtrls">TCustomEdit</class> provide basic behavior that descendant classes inherit as well as behavior that components can override to customize their behavior.</para>
</comments>
</member>
<member name="M:StdCtrls.StdCtrls.GetSelTextBuf">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Copies the selected text into a buffer and returns the number of characters copied.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <method namespace="StdCtrls" class="TCustomEdit">GetSelTextBuf</method> to copy the selected text into a character buffer. If there is no selection, the buffer receives an empty string. If the selection contains more than (BufSize - 1) characters, only the first (BufSize - 1) characters are copied. <method namespace="StdCtrls" class="TCustomEdit">GetSelTextBuf</method> returns the number of characters that were actually copied into the buffer.</para>
<method namespace="StdCtrls" class="TCustomEdit">Create</method>s an instance of <method namespace="StdCtrls" class="TCustomEdit">TCustomEdit</method>.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Call <method namespace="StdCtrls" class="TCustomEdit">Create</method> to create and initialize an instance of <method namespace="StdCtrls" class="TCustomEdit">TCustomEdit</method>.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">AOwner is another component, typically the form, that is responsible for freeing the edit control. It becomes the value of the Owner property.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Derived objects that override the <method namespace="StdCtrls" class="TCustomEdit">Create</method> method should call the inherited <method namespace="StdCtrls" class="TCustomEdit">Create</method> before performing any additional initialization. </para>
</comments>
</member>
<member name="M:StdCtrls.StdCtrls.Change">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Generates an On<method namespace="StdCtrls" class="TCustomEdit">Change</method> event.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Applications do not call the <method namespace="StdCtrls" class="TCustomEdit">Change</method> method directly. It is triggered automatically by Windows events. <method namespace="StdCtrls" class="TCustomEdit">Change</method> is exposed as a protected method so that derived classes can make additional responses when the text changes beyond invoking the On<method namespace="StdCtrls" class="TCustomEdit">Change</method> event handler. If Derived classes that override the <method namespace="StdCtrls" class="TCustomEdit">Change</method> method do not call the inherited method, the On<method namespace="StdCtrls" class="TCustomEdit">Change</method> event handler will not be called.</para>
</comments>
</member>
<member name="M:StdCtrls.StdCtrls.CreateParams">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Initializes a window-creation parameter record passed in the Params parameter.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The CreateWnd method calls <method namespace="StdCtrls" class="TCustomEdit">CreateParams</method> to initialize the parameters it passes to CreateWindowHandle. <method namespace="StdCtrls" class="TCustomEdit">TCustomEdit</method> overrides the inherited method to specify a scrollable single-line edit control that reflects the current values of the BorderStyle, HideSelection, PasswordChar, and ReadOnly properties.</para>
<method namespace="StdCtrls" class="TCustomEdit">CreateWindowHandle</method> calls the inherited <method namespace="StdCtrls" class="TCustomEdit">CreateWindowHandle</method> method after working around a Win95 bug involving setting the read-only style on machines with Far East locales.</para>
</comments>
</member>
<member name="M:StdCtrls.StdCtrls.CreateWnd">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Creates a Windows control corresponding to the edit control.</para>
<method namespace="StdCtrls" class="TCustomEdit">CreateWnd</method> is called when the edit control is created, and whenever a change to the edit control requires the window to be recreated. After calling the inherited method, <method namespace="StdCtrls" class="TCustomEdit">CreateWnd</method> sends the newly created window messages to enforce the MaxLength and PasswordChar properties.</para>
</comments>
</member>
<member name="M:StdCtrls.StdCtrls.DestroyWnd">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Destroys the Windows control that corresponds to the edit control.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The Windows control for the edit box can be temporarily destroyed and recreated in order to set properties that require changing the window creation parameters. When this happens, <method namespace="StdCtrls" class="TCustomEdit">DestroyWnd</method> is called.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Before the window is destroyed, <method namespace="StdCtrls" class="TCustomEdit">DestroyWnd</method> saves a copy of any properties that are needed to recreate the window after it is destroyed.</para>
<method namespace="StdCtrls" class="TCustomEdit">DoSetMaxLength</method> is the property access function for the MaxLength property. It is exposed as a protected method so that descendants of <method namespace="StdCtrls" class="TCustomEdit">TCustomEdit</method> can customize the implementation of the MaxLength property. </para>
<method namespace="StdCtrls" class="TCustomEdit">DoSetMaxLength</method> sends an EM_LIMITTEXT message to the window of the edit control.</para>
</comments>
</member>
<member name="M:StdCtrls.StdCtrls.Clear">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Deletes all text from the edit control.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <method namespace="StdCtrls" class="TCustomEdit">Clear</method> to replace the Text property with an empty string. <method namespace="StdCtrls" class="TCustomEdit">Clear</method> removes all text, not just the selected text. To remove just the selected text, use <method namespace="StdCtrls" class="TCustomEdit">Clear</method>Selection.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Removes the selected text from the edit control.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <method namespace="StdCtrls" class="TCustomEdit">ClearSelection</method> to delete the selected text from the edit control. If no text is selected, <method namespace="StdCtrls" class="TCustomEdit">ClearSelection</method> does nothing. If all of the text is selected, <method namespace="StdCtrls" class="TCustomEdit">ClearSelection</method> clears all text, like the Clear method.</para>
<para>Calling <method namespace="StdCtrls" class="TCustomEdit">ClearSelection</method> does the same thing as sending the edit control a WM_CLEAR message.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Copies the selected text in the edit control to the Clipboard in CF_TEXT format.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <method namespace="StdCtrls" class="TCustomEdit">CopyToClipboard</method> to replace the contents of the Clipboard with the selected text. <method namespace="StdCtrls" class="TCustomEdit">CopyToClipboard</method> does not clear the Clipboard if no text is selected. If no text is selected, <method namespace="StdCtrls" class="TCustomEdit">CopyToClipboard</method> does nothing.</para>
<para>Calling <method namespace="StdCtrls" class="TCustomEdit">CopyToClipboard</method> does the same thing as sending the edit control a WM_COPY message.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Copies the selected text to the Clipboard in CF_TEXT format and then deletes the selection.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <method namespace="StdCtrls" class="TCustomEdit">CutToClipboard</method> to replace the contents of the Clipboard with the selected text while clearing the selected text. If no text is selected, <method namespace="StdCtrls" class="TCustomEdit">CutToClipboard</method> does nothing.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Provides message handling for all messages that the control does not fully process itself.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Override <method namespace="StdCtrls" class="TCustomEdit">DefaultHandler</method> to change the default message handling for the edit control. The Message parameter can be cast to a TMessage type, to obtain the WParam, LParam, and Result of the message. If the Result of the message is non-zero, the message has already been handled. Set the Result field to a non-zero value to prevent further processing of the message by the inherited method.</para>
<para>In Delphi, calling inherited in a message-handling method results in a call to the ancestor's <method namespace="StdCtrls" class="TCustomEdit">DefaultHandler</method> method if that ancestor does not specify a handler for the message being handled.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Pastes the contents of the Clipboard into edit control, replacing the current selection.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <method namespace="StdCtrls" class="TCustomEdit">PasteFromClipboard</method> to replace the selected text with the contents of the Clipboard, or, if no text is selected, to insert the contents of the Clipboard at the cursor. If the Clipboard is empty, or if it does not contain anything in CF_TEXT format, <method namespace="StdCtrls" class="TCustomEdit">PasteFromClipboard</method> does nothing.</para>
<para>Calling <method namespace="StdCtrls" class="TCustomEdit">PasteFromClipboard</method> does the same thing as sending the edit control a WM_PASTE message.</para>
</note>
</comments>
</member>
<member name="M:StdCtrls.StdCtrls.Undo">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Backs out all changes in the undo buffer.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Call <method namespace="StdCtrls" class="TCustomEdit">Undo</method> to cancel all changes made to the Text property since the last call to the Clear<method namespace="StdCtrls" class="TCustomEdit">Undo</method> method. If Clear<method namespace="StdCtrls" class="TCustomEdit">Undo</method> was never called, <method namespace="StdCtrls" class="TCustomEdit">Undo</method> rolls back all changes.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">To determine whether there are any changes in the undo buffer, check the Can<method namespace="StdCtrls" class="TCustomEdit">Undo</method> property.</para>
</comments>
</member>
<member name="M:StdCtrls.StdCtrls.ClearUndo">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Clears the undo buffer so that no changes to the text can be backed out.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <method namespace="StdCtrls" class="TCustomEdit">ClearUndo</method> to commit changes to the Text property. After calling <method namespace="StdCtrls" class="TCustomEdit">ClearUndo</method>, the CanUndo property is false and the Undo method does nothing.</para>
</comments>
</member>
<member name="M:StdCtrls.StdCtrls.SelectAll">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Selects all text in the edit control.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <method namespace="StdCtrls" class="TCustomEdit">SelectAll</method> to select all text in the edit control. To select only part of the text, use the SelStart and SelLength properties.</para>
</comments>
</member>
<member name="M:StdCtrls.StdCtrls.SetSelTextBuf">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Replaces the selected text with a null-terminated string.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <method namespace="StdCtrls" class="TCustomEdit">SetSelTextBuf</method> to replace the current selection by the contents of the null-terminated string pointed to by Buffer. If no text is selected, the contents of Buffer are inserted at the cursor. <method namespace="StdCtrls" class="TCustomEdit">SetSelTextBuf</method> does the same thing as setting the SelText property, except that it takes a pointer to a char type rather than a string.</para>
</comments>
</member>
<member name="P:StdCtrls.StdCtrls.AutoSelect">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Determines whether all the text in the edit control is automatically selected when the control gets focus.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Set <property namespace="StdCtrls" class="TCustomEdit">AutoSelect</property> to select all the text when the edit control gets focus. <property namespace="StdCtrls" class="TCustomEdit">AutoSelect</property> only applies to single-line edit controls.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <property namespace="StdCtrls" class="TCustomEdit">AutoSelect</property> when the user is more likely to replace the text in the edit control than to append to it.</para>
</comments>
</member>
<member name="P:StdCtrls.StdCtrls.AutoSize">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Determines whether the height of the edit control automatically resizes to accommodate the text. </para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <property namespace="StdCtrls" class="TCustomEdit">AutoSize</property> to make the edit control adjust its size automatically so the client area accommodates the height of the text. When <property namespace="StdCtrls" class="TCustomEdit">AutoSize</property> is false, the edit control has a fixed height. When <property namespace="StdCtrls" class="TCustomEdit">AutoSize</property> is true, the size of the control is readjusted whenever a change occurs that could affect the height of the control, such as a change to the font or border style.</para>
<property namespace="StdCtrls" class="TCustomEdit">AutoSize</property> only adjusts the height of the edit control. Even with <property namespace="StdCtrls" class="TCustomEdit">AutoSize</property> set to true, text in the edit control may appear truncated if it extends beyond the width of the control.</para>
</note>
</comments>
</member>
<member name="P:StdCtrls.StdCtrls.BorderStyle">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Determines whether the edit control has a single line border around the client area.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <property namespace="StdCtrls" class="TCustomEdit">BorderStyle</property> to affect the sharpness with which the client area of the edit control stands out. <property namespace="StdCtrls" class="TCustomEdit">BorderStyle</property> can have a value of either bsSingle or bsNone. If <property namespace="StdCtrls" class="TCustomEdit">BorderStyle</property> is bsSingle, the edit control has a single-line border around the client area. If <property namespace="StdCtrls" class="TCustomEdit">BorderStyle</property> is bsNone, there will be no border.</para>
</comments>
</member>
<member name="P:StdCtrls.StdCtrls.CharCase">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Determines the case of the text within the edit control.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <property namespace="StdCtrls" class="TCustomEdit">CharCase</property> to force the contents of the edit control to assume a particular case.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">When <property namespace="StdCtrls" class="TCustomEdit">CharCase</property> is set to ecLowerCase or ecUpperCase, the case of characters is converted as the user types them into the edit control. Changing the <property namespace="StdCtrls" class="TCustomEdit">CharCase</property> property to ecLowerCase or ecUpperCase changes the actual contents of the text, not just the appearance. Any case information is lost and can't be recaptured by changing <property namespace="StdCtrls" class="TCustomEdit">CharCase</property> to ecNormal.</para>
</comments>
</member>
<member name="P:StdCtrls.StdCtrls.HideSelection">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Determines whether the visual indication of the selected text remains when focus shifts to another control.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Set <property namespace="StdCtrls" class="TCustomEdit">HideSelection</property> to false to provide visual feedback of the selected portion of the text even when the edit control does not have focus. Set <property namespace="StdCtrls" class="TCustomEdit">HideSelection</property> to true to show the selection only when the edit control has focus. <property namespace="StdCtrls" class="TCustomEdit">HideSelection</property> does not affect the actual value of the selection, only the visual indication. Always setting <property namespace="StdCtrls" class="TCustomEdit">HideSelection</property> to false can make forms with many edit controls look too busy.</para>
</comments>
</member>
<member name="P:StdCtrls.StdCtrls.MaxLength">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Specifies the maximum number of characters the user can enter into the edit control.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <property namespace="StdCtrls" class="TCustomEdit">MaxLength</property> to limit the number of characters that can be entered into the edit control. A value of 0 indicates that there is no application-defined limit on the length.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <property namespace="StdCtrls" class="TCustomEdit">MaxLength</property> to limit the length of the text in an edit control if that text will be copied into a fixed-length buffer.</para>
<para>Setting <property namespace="StdCtrls" class="TCustomEdit">MaxLength</property> will not truncate the existing text, it merely prevents the user from adding more text after reaching the limit of <property namespace="StdCtrls" class="TCustomEdit">MaxLength</property> characters.</para>
<para>Even when <property namespace="StdCtrls" class="TCustomEdit">MaxLength</property> is 0, there may be limitations imposed by the operating system on the number of characters that may be entered into an edit control.</para>
</note>
</comments>
</member>
<member name="P:StdCtrls.StdCtrls.OEMConvert">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Determines whether characters typed in the edit control are converted from ANSI to OEM and then back to ANSI.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">To ensure that any characters typed in the edit control can be unambiguously converted to the OEM character set, set <property namespace="StdCtrls" class="TCustomEdit">OEMConvert</property> to true. This causes all characters to be converted from ANSI to OEM and then back to ANSI as they are typed. Set <property namespace="StdCtrls" class="TCustomEdit">OEMConvert</property> to false to avoid the overhead of this conversion when it does not matter whether the text can be unambiguously mapped to an OEM string.</para>
<property namespace="StdCtrls" class="TCustomEdit">OEMConvert</property> is most useful for edit controls used to enter file names when the application does not use Unicode file names.</para>
</comments>
</member>
<member name="P:StdCtrls.StdCtrls.PasswordChar">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Indicates the character, if any, to display in place of the actual characters typed in the control.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use the <property namespace="StdCtrls" class="TCustomEdit">PasswordChar</property> property to create an edit control that displays a special character in place of any entered text. If <property namespace="StdCtrls" class="TCustomEdit">PasswordChar</property> is set to the null character (ANSI character zero), the edit control displays its text normally. If <property namespace="StdCtrls" class="TCustomEdit">PasswordChar</property> is any other character, the edit control displays <property namespace="StdCtrls" class="TCustomEdit">PasswordChar</property> in place of each character typed. <property namespace="StdCtrls" class="TCustomEdit">PasswordChar</property> affects the appearance of the edit control only. The value of the Text property reflects the actual characters that are typed.</para>
</comments>
</member>
<member name="P:StdCtrls.StdCtrls.CanUndo">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Indicates whether the edit control contains changes that can be backed out.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Read <property namespace="StdCtrls" class="TCustomEdit">CanUndo</property> to determine whether the user has made any changes to the text that can be undone by calling the Undo method. This is useful when enabling or disabling menu items that correspond to these commands.</para>
</comments>
</member>
<member name="P:StdCtrls.StdCtrls.Modified">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Indicates whether the user edited the text of the edit control.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <property namespace="StdCtrls" class="TCustomEdit">Modified</property> to determine whether the Text property of the edit control changed. If an application directly alters the Text property of an edit control, it should set the <property namespace="StdCtrls" class="TCustomEdit">Modified</property> property to true.</para>
</comments>
</member>
<member name="P:StdCtrls.StdCtrls.ReadOnly">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Determines whether the user can change the text of the edit control.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">To restrict the edit control to display only, set the <property namespace="StdCtrls" class="TCustomEdit">ReadOnly</property> property to true. Set <property namespace="StdCtrls" class="TCustomEdit">ReadOnly</property> to false to allow the contents of the edit control to be edited.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Setting <property namespace="StdCtrls" class="TCustomEdit">ReadOnly</property> to true ensures that the text is not altered, while still allowing the user to select text. The selected text can then be manipulated by the application, or copied to the Clipboard.</para>
</comments>
</member>
<member name="P:StdCtrls.StdCtrls.SelLength">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Specifies the number of characters (bytes) that are selected.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Read <property namespace="StdCtrls" class="TCustomEdit">SelLength</property> to determine the length, in bytes, of the selected text. This is the same as the number of characters, unless you are using a multi-byte character set. Set <property namespace="StdCtrls" class="TCustomEdit">SelLength</property> to change the selection to consist of the first <property namespace="StdCtrls" class="TCustomEdit">SelLength</property> bytes starting at SelStart.</para>
<para>Setting <property namespace="StdCtrls" class="TCustomEdit">SelLength</property> to a value greater than the number of characters from SelStart to the end of the text results in the selection of all characters from SelStart to the end of the text. Reading <property namespace="StdCtrls" class="TCustomEdit">SelLength</property> immediately after setting it to a value greater than the number of available characters returns the number of characters actually selected, not the value that was just set.</para>
</note>
</comments>
</member>
<member name="P:StdCtrls.StdCtrls.SelStart">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Specifies the position of the first selected character in the text.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Read <property namespace="StdCtrls" class="TCustomEdit">SelStart</property> to determine the position of the first selected character, where 0 indicates the first character. If there is no selected text, <property namespace="StdCtrls" class="TCustomEdit">SelStart</property> indicates the position of the cursor. Set <property namespace="StdCtrls" class="TCustomEdit">SelStart</property> to remove the current selection and position the cursor just before the indicated character.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">To select a particular range of the text, first set <property namespace="StdCtrls" class="TCustomEdit">SelStart</property> to position the cursor, and then set SelLength to extend the selection.</para>
</comments>
</member>
<member name="P:StdCtrls.StdCtrls.SelText">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Specifies the selected portion of the edit control's text.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Read <property namespace="StdCtrls" class="TCustomEdit">SelText</property> to determine the value of the selected text. Set <property namespace="StdCtrls" class="TCustomEdit">SelText</property> to replace the selected text with a new string. If there is no selection, but the edit control has focus, set <property namespace="StdCtrls" class="TCustomEdit">SelText</property> to insert a new string into the text at the cursor.</para>
</comments>
</member>
<member name="E:StdCtrls.StdCtrls.OnChange">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Occurs when the text for the edit control may have changed.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Write an <event namespace="StdCtrls" class="TCustomEdit">OnChange</event> event handler to take specific action whenever the text for the edit control may have changed. Use the Modified property to see if a change actually occurred. The Text property of the edit control will already be updated to reflect any changes. This event provides the first opportunity to respond to modifications that the user types into the edit control.</para>
<class namespace="StdCtrls">TEdit</class> is a wrapper for a Windows single-line edit control. </para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use a <class namespace="StdCtrls">TEdit</class> object to put a standard Windows edit control on a form. Edit controls are used to retrieve text that users type. Edit controls can also display text to the user. </para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">When only displaying text to the user, choose an edit control to allow users to select text and copy it to the Clipboard. Choose a label object if the selection capabilities of an edit control are not needed.</para>
<class namespace="StdCtrls">TEdit</class> implements the generic behavior introduced in TCustomEdit. <class namespace="StdCtrls">TEdit</class> publishes many of the properties inherited from TCustomEdit, but does not introduce any new behavior. For specialized edit controls, use other descendant classes of TCustomEdit or derive from it.</para>
</comments>
</member>
<member name="T:StdCtrls.TScrollStyle">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Identifies a set of scrollbars by their orientation.</para>
<class namespace="StdCtrls">TCustomMemo</class> is the base type for memo components, which are multiline edit boxes, including TMemo and TDBMemo. </para>
<class namespace="StdCtrls">TCustomMemo</class> introduces new properties and methods to expand the capabilities of TCustomEdit for handling multiline edit boxes.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not create instances of <class namespace="StdCtrls">TCustomMemo</class>. Use <class namespace="StdCtrls">TCustomMemo</class> as a base class when declaring control objects that implement a multiline edit control. Properties and methods of <class namespace="StdCtrls">TCustomMemo</class> provide basic behavior that descendant classes inherit as well as behavior that components can override to customize their behavior.</para>
<method namespace="StdCtrls" class="TCustomMemo">Create</method>s and initializes an instance of <method namespace="StdCtrls" class="TCustomMemo">TCustomMemo</method>.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Call <method namespace="StdCtrls" class="TCustomMemo">Create</method> to instantiate a <method namespace="StdCtrls" class="TCustomMemo">TCustomMemo</method> object.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">AOwner is the component, typically the form, that is responsible for freeing the memo object. This becomes the value of the Owner property.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Derived objects that override the <method namespace="StdCtrls" class="TCustomMemo">Create</method> method should call the inherited <method namespace="StdCtrls" class="TCustomMemo">Create</method> before making any additional initializations.</para>
</comments>
</member>
<member name="M:StdCtrls.StdCtrls.CreateParams">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Initializes a window-creation parameter record passed in the Params parameter.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The CreateWnd method calls <method namespace="StdCtrls" class="TCustomMemo">CreateParams</method> to initialize the parameters it passes to CreateWindowHandle. <method namespace="StdCtrls" class="TCustomMemo">TCustomMemo</method> overrides the inherited method to specify a scrollable multiline edit control. The Params parameter is updated to reflect the current values of the Alignment, ScrollBars, and WordWrap properties, in addition to the BorderStyle, HideSelection, PasswordChar, and ReadOnly properties that the inherited method specifies.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Creates a window based on the window-creation parameter record.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The CreateWnd method calls <method namespace="StdCtrls" class="TCustomMemo">CreateWindowHandle</method> to create the edit control window once it has been specified in the window-creation parameters. <method namespace="StdCtrls" class="TCustomMemo">CreateWindowHandle</method> creates the window by calling the CreateWindowEx API function, passing parameters from the record passed in the Params parameter. <method namespace="StdCtrls" class="TCustomMemo">CreateWindowHandle</method> overrides the inherited method to interpret the Caption in Params as the initial text rather than as the window caption.</para>
</comments>
</member>
<member name="M:StdCtrls.StdCtrls.KeyPress">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Ensures that return characters are not entered into the text when WantReturns is false.</para>
<method namespace="StdCtrls" class="TCustomMemo">KeyPress</method> is called automatically when the user presses a key. After calling the inherited <method namespace="StdCtrls" class="TCustomMemo">KeyPress</method>, which calls the On<method namespace="StdCtrls" class="TCustomMemo">KeyPress</method> event handler, <method namespace="StdCtrls" class="TCustomMemo">KeyPress</method> discards return characters when WantReturns is false.</para>
</comments>
</member>
<member name="M:StdCtrls.StdCtrls.Loaded">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Initializes the memo control when it is first loaded into memory.</para>
<method namespace="StdCtrls" class="TCustomMemo">Loaded</method> overrides the inherited method so that the Modified property is set to false when the form containing the memo is first loaded into memory. Derived classes can override the <method namespace="StdCtrls" class="TCustomMemo">Loaded</method> method to perform additional initializations after the memo's form is loaded.</para>
<method namespace="StdCtrls" class="TCustomMemo">Destroy</method>s an instance of <method namespace="StdCtrls" class="TCustomMemo">TCustomMemo</method>.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call <method namespace="StdCtrls" class="TCustomMemo">Destroy</method> directly in an application. Instead, call Free. Free checks that the <method namespace="StdCtrls" class="TCustomMemo">TCustomMemo</method> reference is not nil, and only then calls <method namespace="StdCtrls" class="TCustomMemo">Destroy</method>.</para>
<method namespace="StdCtrls" class="TCustomMemo">Destroy</method> frees the TStrings object that implements the Lines property before calling the inherited destructor.</para>
</comments>
</member>
<member name="P:StdCtrls.StdCtrls.Alignment">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Determines how the text is aligned within the memo control.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <property namespace="StdCtrls" class="TCustomMemo">Alignment</property> to change the way the text is formatted by the memo control. <property namespace="StdCtrls" class="TCustomMemo">Alignment</property> can take one of the following values:</para>
<para>Align text to the left side of the control</para>
</td>
</tr>
<tr>
<td>
<para>taCenter</para>
</td>
<td>
<para>Center text horizontally in the control.</para>
</td>
</tr>
<tr>
<td>
<para>taRightJustify</para>
</td>
<td>
<para>Align text to the right side of the control.</para>
</td>
</tr>
</table>
</comments>
</member>
<member name="P:StdCtrls.StdCtrls.ScrollBars">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Determines whether the memo control has scroll bars.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <property namespace="StdCtrls" class="TCustomMemo">ScrollBars</property> to give a multiline edit control horizontal or vertical scroll bars. <property namespace="StdCtrls" class="TCustomMemo">ScrollBars</property> can take one of the following values:</para>
<para>The control has a single scroll bar on the bottom edge.</para>
</td>
</tr>
<tr>
<td>
<para>ssVertical</para>
</td>
<td>
<para>The control has a single scroll bar on the right edge.</para>
</td>
</tr>
<tr>
<td>
<para>ssBoth</para>
</td>
<td>
<para>The control has a scroll bar on both the bottom and right edges.</para>
</td>
</tr>
</table>
</comments>
</member>
<member name="P:StdCtrls.StdCtrls.WantReturns">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Determines whether the user can insert return characters into the text.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Set <property namespace="StdCtrls" class="TCustomMemo">WantReturns</property> to true to allow users to enter return characters into the text. Set <property namespace="StdCtrls" class="TCustomMemo">WantReturns</property> to false to allow the form to handle return characters instead. </para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">For example, in a form with a default button (such as an OK button) and a memo control, if <property namespace="StdCtrls" class="TCustomMemo">WantReturns</property> is false, pressing Enter chooses the default button. If <property namespace="StdCtrls" class="TCustomMemo">WantReturns</property> is true, pressing Enter inserts a return character in the text.</para>
<para>If <property namespace="StdCtrls" class="TCustomMemo">WantReturns</property> is false, users can still enter return characters into the text by pressing Ctrl+Enter.</para>
</note>
</comments>
</member>
<member name="P:StdCtrls.StdCtrls.WantTabs">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Determines whether the user can insert tab characters into the text.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Set <property namespace="StdCtrls" class="TCustomMemo">WantTabs</property> to true to allow users to enter tab characters into the text. Set <property namespace="StdCtrls" class="TCustomMemo">WantTabs</property> to false if you want the tab character to select the next control on the form instead. </para>
<para>If <property namespace="StdCtrls" class="TCustomMemo">WantTabs</property> is true, users can tab into the edit control, but they can't tab out.</para>
</note>
</comments>
</member>
<member name="P:StdCtrls.StdCtrls.WordWrap">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Determines whether the edit control inserts soft carriage returns so text wraps at the right margin.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Set <property namespace="StdCtrls" class="TCustomMemo">WordWrap</property> to true to make the edit control wrap text at the right margin so it fits in the client area. The wrapping is cosmetic only. The text does not include any return characters that were not explicitly entered. Set <property namespace="StdCtrls" class="TCustomMemo">WordWrap</property> to false to have the edit control show a separate line only where return characters were explicitly entered into the text.</para>
<para>There should be no use for a horizontal scroll bar if <property namespace="StdCtrls" class="TCustomMemo">WordWrap</property> is true.</para>
</note>
</comments>
</member>
<member name="P:StdCtrls.StdCtrls.CaretPos">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Indicates the position of the caret in the client area of the memo.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <property namespace="StdCtrls" class="TCustomMemo">CaretPos</property> to determine the coordinates of the cursor. <property namespace="StdCtrls" class="TCustomMemo">CaretPos</property> defines a pixel location onscreen, with the origin in the top left corner of the memo. X specifies the horizontal coordinate of the point, Y specifies the vertical coordinate.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">To determine the position of the caret in terms of characters of text only (rather than X/Y location), use the SelStart property.</para>
</comments>
</member>
<member name="P:StdCtrls.StdCtrls.Lines">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Contains the individual lines of text in the memo control.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <property namespace="StdCtrls" class="TCustomMemo">Lines</property> to manipulate text in an memo control on a line-by-line basis. <property namespace="StdCtrls" class="TCustomMemo">Lines</property> is a TStrings object, so the TStrings methods may be used for <property namespace="StdCtrls" class="TCustomMemo">Lines</property> to perform manipulations such as counting the lines of text, adding new lines, deleting lines, or replacing lines with new text.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">To work with all the text at once, use the Text property. To manipulate individual lines of text, the <property namespace="StdCtrls" class="TCustomMemo">Lines</property> property works better.</para>
<para>Although <property namespace="StdCtrls" class="TCustomMemo">Lines</property> is implemented as a TStrings descendant, it does not implement the support for associating objects with the strings in the list.</para>
<class namespace="StdCtrls">TMemo</class> is a wrapper for a Windows multiline edit control.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <class namespace="StdCtrls">TMemo</class> to put a standard Windows multiline edit control on a form. Multiline edit boxes allow the user to enter more than one line of text. They are appropriate for representing lengthy information.</para>
<class namespace="StdCtrls">TMemo</class> implements the generic behavior introduced in TCustomMemo. <class namespace="StdCtrls">TMemo</class> publishes many of the properties inherited from TCustomMemo, but does not introduce any new behavior.</para>
<type namespace="OleAuto">TOwnerDrawState</type> is used by event handlers in owner-draw controls to indicate the state of an item about to be drawn. It is a set that includes zero or more of the following:</para>
<class namespace="StdCtrls">TCustomComboBoxStrings</class> is the base class for objects that represent the items in the drop-down list of a combo box. Each type of combo box (TComboBox or TComboBoxEx) uses its own <class namespace="StdCtrls">TCustomComboBoxStrings</class> descendant to manage the list of items.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not create instances of <class namespace="StdCtrls">TCustomComboBoxStrings</class>. This class is designed to work only with a combo box. TCustomCombo creates the <class namespace="StdCtrls">TCustomComboBoxStrings</class> descendant it uses to implement its Items property.</para>
</comments>
</member>
<member name="M:StdCtrls.StdCtrls.GetCount">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Returns the number of strings in the list</para>
<method namespace="StdCtrls" class="TCustomComboBoxStrings">GetCount</method> is the protected read implementation of the Count property. It fetches the number of items from the combo box identified by the ComboBox property.</para>
</comments>
</member>
<member name="M:StdCtrls.StdCtrls.Get">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Returns a string given its index.</para>
<method namespace="StdCtrls" class="TCustomComboBoxStrings">Get</method> is the protected read implementation of the Strings property. It fetches the specified string from the combo box identified by the ComboBox property.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Index identifies the string to return, where 0 is the index of the first string, 1 is the index of the second string, and so on.</para>
</comments>
</member>
<member name="M:StdCtrls.StdCtrls.GetObject">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Returns the object associated with the item at a specified index. </para>
<method namespace="StdCtrls" class="TCustomComboBoxStrings">GetObject</method> is the protected read implementation of the Objects property. It fetches the associated object for the identified item from the combo box identified by the ComboBox property.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Index is the index of the item with which the object is associated.</para>
</comments>
</member>
<member name="M:StdCtrls.StdCtrls.IndexOf">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Returns the position of a string in the list.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Call <method namespace="StdCtrls" class="TCustomComboBoxStrings">IndexOf</method> to obtain the position of the first occurrence of a string that matches S. The string must be an exact match (S can't be the prefix of a string in the combo box).</para>
<method namespace="StdCtrls" class="TCustomComboBoxStrings">IndexOf</method> returns the 0-based index of the string. Thus, if S matches the first string in the list, <method namespace="StdCtrls" class="TCustomComboBoxStrings">IndexOf</method> returns 0, if S is the second string, <method namespace="StdCtrls" class="TCustomComboBoxStrings">IndexOf</method> returns 1, and so on. If the string does not have a match in the string list, <method namespace="StdCtrls" class="TCustomComboBoxStrings">IndexOf</method> returns -1.</para>
</comments>
</member>
<member name="M:StdCtrls.StdCtrls.PutObject">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Changes the object associated with the string at a specified index.</para>
<method namespace="StdCtrls" class="TCustomComboBoxStrings">PutObject</method> is the protected write implementation of the Objects property. It associates the object specified by AObject with the item identified by Index.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Index identifies an item in the drop-down list of the combo box, where 0 is the index of the first item, 1 is the index of the second item, and so on.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">AObject is the object to associated with the specified item.</para>
<method namespace="StdCtrls" class="TCustomComboBoxStrings">SetUpdateState</method> is called at the beginning or end of a series of updates. When the BeginUpdate method is first called and the <method namespace="StdCtrls" class="TCustomComboBoxStrings">TCustomComboBoxStrings</method> object is not already in the middle of an update, <method namespace="StdCtrls" class="TCustomComboBoxStrings">SetUpdateState</method> is called with Updating set to true. When the EndUpdate method is called and it cancels out the last unmatched call to BeginUpdate, <method namespace="StdCtrls" class="TCustomComboBoxStrings">SetUpdateState</method> is called with Updating set to false.</para>
<method namespace="StdCtrls" class="TCustomComboBoxStrings">SetUpdateState</method> refreshes the combo box when Updating is false, so that the combo box reflects the new set of strings.</para>
</comments>
</member>
<member name="M:StdCtrls.StdCtrls.Clear">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Deletes all the strings from the list.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Call clear to empty the drop-down list of the combo box. All references to associated objects are also removed. However, the objects themselves are not freed.</para>
</comments>
</member>
<member name="M:StdCtrls.StdCtrls.Delete">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Removes the item specified by the Index parameter.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Call <method namespace="StdCtrls" class="TCustomComboBoxStrings">Delete</method> to remove a single item from the list. If an object is associated with the string, the reference to the object is removed as well. Index gives the position of the string in the drop-down list, where 0 is the first string, 1 is the second string, and so on.</para>
</comments>
</member>
<member name="P:StdCtrls.StdCtrls.ComboBox">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Identifies the combo box whose items this object represents.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">TCustom<property namespace="StdCtrls" class="TCustomComboBoxStrings">ComboBox</property>Strings uses <property namespace="StdCtrls" class="TCustomComboBoxStrings">ComboBox</property> internally so that the strings in the list and the items in the drop-down list of the combo box remain synchronized.</para>
<type namespace="OleAuto">TCustomComboBoxStringsClass</type> is the type for a class reference of TCustomComboBoxStrings or any of its descendants. It is a pointer to the runtime type information (RTTI) for the class type.</para>
<class namespace="StdCtrls">TCustomCombo</class> is the base class for all combo boxes.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <class namespace="StdCtrls">TCustomCombo</class> as a base class when defining a control that represents a specialized combo box. A combo box is an edit box with a scrollable list attached to it; users can select an item from the list or type directly into the edit box. Combo boxes can present the list as a drop-down list or as a list box that is always visible.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Typically, combo box classes do not descend directly from <class namespace="StdCtrls">TCustomCombo</class>. Rather, they descend from one of <class namespace="StdCtrls">TCustomCombo</class>'s descendants, <class namespace="StdCtrls">TCustomCombo</class>Box or <class namespace="StdCtrls">TCustomCombo</class>BoxEx. Use <class namespace="StdCtrls">TCustomCombo</class> as a base class for a simple combo box, or <class namespace="StdCtrls">TCustomCombo</class>BoxEx as a base class for a combo box that supports the extended combo box features such as images on the list entries.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not create instances of <class namespace="StdCtrls">TCustomCombo</class>. To put a combo box in a form, use a descendant of <class namespace="StdCtrls">TCustomCombo</class>, such as TComboBox or TComboBoxEx.</para>
</comments>
</member>
<member name="M:StdCtrls.StdCtrls.GetItemsClass">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Indicates the class that implements the Items property.</para>
<method namespace="StdCtrls" class="TCustomCombo">TCustomCombo</method> uses <method namespace="StdCtrls" class="TCustomCombo">GetItemsClass</method> internally to determine what class to instantiate when it implements the Items property.</para>
<condition language="CBuilder">pure virtual</condition>, meaning it has no implementation. <method namespace="StdCtrls" class="TCustomCombo">TCustomCombo</method> descendants override this method to indicate a <method namespace="StdCtrls" class="TCustomCombo">TCustomCombo</method>BoxStrings descendant that implements the Items property.</para>
</comments>
</member>
<member name="M:StdCtrls.StdCtrls.GetCount">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Returns the value of the ItemCount property.</para>
<method namespace="StdCtrls" class="TCustomCombo">GetItemIndex</method> is the read implementation of the ItemIndex property. It returns the index of the selected item in the drop-down list. The first item in the list has index 0, the second item has index 1, and so on. If no item is selected, the value of ItemIndex is -1.</para>
</comments>
</member>
<member name="M:StdCtrls.StdCtrls.Focused">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Indicates whether the combo box has input focus.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Call <method namespace="StdCtrls" class="TCustomCombo">Focused</method> to determine whether the combo box is currently the recipient of keyboard input. When <method namespace="StdCtrls" class="TCustomCombo">Focused</method> returns <condition os="Windows">true</condition>, the combo box is the active control and keystroke messages are sent to it. When <method namespace="StdCtrls" class="TCustomCombo">Focused</method> is <condition os="Windows">false</condition>, the combo box is not active (although it may be selected).</para>
<method namespace="StdCtrls" class="TCustomCombo">Create</method>s and initializes a <method namespace="StdCtrls" class="TCustomCombo">TCustomCombo</method> instance.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Call <method namespace="StdCtrls" class="TCustomCombo">Create</method> to generate a combo box at runtime. Combo boxes placed on forms at design time are created automatically.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">AOwner is a component (typically a form) that is responsible for freeing the combo box instance.</para>
<method namespace="StdCtrls" class="TCustomCombo">TCustomCombo</method> calls <method namespace="StdCtrls" class="TCustomCombo">AdjustDropDown</method> when it drops down the drop-down list. This method adjusts the size and position of the drop-down list to reflect the values of the ItemHeight and DropDownCount properties.</para>
</comments>
</member>
<member name="M:StdCtrls.StdCtrls.ComboWndProc">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Responds to Windows messages sent to the edit control or drop-down list.</para>
<method namespace="StdCtrls" class="TCustomCombo">ComboWndProc</method> handles the common processing of Windows messages sent to the edit region or list portion of the combo box. It is called by the EditWndProc and ListWndProc methods to take care of all processing that is not specific to the edit region or drop-down list.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The Message parameter describes the Windows message. The ComboWnd parameter is the windows handle for the edit region or list. The ComboProc parameter is a pointer to the default window procedure for the window that received the message. <method namespace="StdCtrls" class="TCustomCombo">ComboWndProc</method> provides default responses to focus events, mouse events, and key strokes. </para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Override <method namespace="StdCtrls" class="TCustomCombo">ComboWndProc</method> to change the way the combo box responds to Windows messages. When overriding <method namespace="StdCtrls" class="TCustomCombo">ComboWndProc</method>, be sure to call the parent class's method to process all unhandled messages.</para>
<para>Do not confuse <method namespace="StdCtrls" class="TCustomCombo">ComboWndProc</method> with the WndProc method. <method namespace="StdCtrls" class="TCustomCombo">ComboWndProc</method> responds to messages that are sent to the edit region or drop-down list. WndProc responds to messages sent to the combo box itself.</para>
</note>
</comments>
</member>
<member name="M:StdCtrls.StdCtrls.CreateWnd">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Creates the Windows control that represents the combo box.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The CreateHandle method calls <method namespace="StdCtrls" class="TCustomCombo">CreateWnd</method> to handle the particulars of creating the combo box window. <method namespace="StdCtrls" class="TCustomCombo">TCustomCombo</method> overrides the inherited method to ensure that the newly-created window and the <method namespace="StdCtrls" class="TCustomCombo">TCustomCombo</method> properties correctly reflect each other.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The Windows control for the combo box can be temporarily destroyed and recreated in order to set properties that require changing the window creation parameters. Thus, <method namespace="StdCtrls" class="TCustomCombo">CreateWnd</method> may be called more than once during the lifetime of the <method namespace="StdCtrls" class="TCustomCombo">TCustomCombo</method> instance.</para>
</comments>
</member>
<member name="M:StdCtrls.StdCtrls.EditWndProc">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Responds to Windows messages that are sent to the edit control portion of the combo box.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">A combo box is composed of several windows: the combo box itself, the edit control, and the drop-down list. <method namespace="StdCtrls" class="TCustomCombo">EditWndProc</method> is the window procedure for the edit control portion of the combo box.</para>
</comments>
</member>
<member name="M:StdCtrls.StdCtrls.WndProc">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Processes messages received by the combo box.</para>
<method namespace="StdCtrls" class="TCustomCombo">WndProc</method> is the first method to received Windows messages that are sent to the combo box. Messages sent to the child windows of the combo box (for the edit region and the list portion) go to the Edit<method namespace="StdCtrls" class="TCustomCombo">WndProc</method> or List<method namespace="StdCtrls" class="TCustomCombo">WndProc</method> method instead. <method namespace="StdCtrls" class="TCustomCombo">WndProc</method> handles messages about changes to the system colors defined in the Windows control panel, and closes up the drop-down list when the Enter key or the Escape key is pressed. All other messages are passed to Dispatch for default processing.</para>
</comments>
</member>
<member name="M:StdCtrls.StdCtrls.ListWndProc">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Responds to Windows messages that are sent to the drop-down list portion of the combo box.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">A combo box is composed of several windows: the combo box itself, the edit control, and the drop-down list. <method namespace="StdCtrls" class="TCustomCombo">ListWndProc</method> is the window procedure for the drop-down list.</para>
</comments>
</member>
<member name="M:StdCtrls.StdCtrls.Loaded">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Initializes the combo box after its form is loaded into memory.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call the protected <method namespace="StdCtrls" class="TCustomCombo">Loaded</method> method. The component streaming system calls this method after it loads the combo box's form from a stream.</para>
<method namespace="StdCtrls" class="TCustomCombo">TCustomCombo</method> overrides the inherited method to select the item specified by the ItemIndex property once the form is fully loaded.</para>
</comments>
</member>
<member name="M:StdCtrls.StdCtrls.Change">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Generates an On<method namespace="StdCtrls" class="TCustomCombo">Change</method> event.</para>
<method namespace="StdCtrls" class="TCustomCombo">Change</method> is called automatically in response to notifications that the text has changed. It responds by generating an On<method namespace="StdCtrls" class="TCustomCombo">Change</method> event. Override this method to add additional processing when the text changes, or to block the On<method namespace="StdCtrls" class="TCustomCombo">Change</method> event.</para>
</comments>
</member>
<member name="M:StdCtrls.StdCtrls.Select">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Generates an On<method namespace="StdCtrls" class="TCustomCombo">Select</method> event.</para>
<method namespace="StdCtrls" class="TCustomCombo">Select</method> is called automatically when the selected item in the drop-down list changes. It responds by generating an On<method namespace="StdCtrls" class="TCustomCombo">Select</method> event. To perform additional processing or block the On<method namespace="StdCtrls" class="TCustomCombo">Select</method> event, override <method namespace="StdCtrls" class="TCustomCombo">Select</method>.</para>
</comments>
</member>
<member name="M:StdCtrls.StdCtrls.DropDown">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Generates an On<method namespace="StdCtrls" class="TCustomCombo">DropDown</method> event.</para>
<method namespace="StdCtrls" class="TCustomCombo">DropDown</method> is called automatically when the DroppedDown property changes to true. It responds by generating an On<method namespace="StdCtrls" class="TCustomCombo">DropDown</method> event. To perform additional processing or block the On<method namespace="StdCtrls" class="TCustomCombo">DropDown</method> event, override <method namespace="StdCtrls" class="TCustomCombo">DropDown</method>.</para>
</comments>
</member>
<member name="M:StdCtrls.StdCtrls.CloseUp">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Generates an On<method namespace="StdCtrls" class="TCustomCombo">CloseUp</method> event.</para>
<method namespace="StdCtrls" class="TCustomCombo">CloseUp</method> is called automatically when the DroppedDown property changes to false. It generates an On<method namespace="StdCtrls" class="TCustomCombo">CloseUp</method> event.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Override <method namespace="StdCtrls" class="TCustomCombo">CloseUp</method> to implement additional class-specific responses when the drop-down list closes up or to suppress the event.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Destroys all of the windows controls that implement the combo box.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">The DestroyWnd method calls <method namespace="StdCtrls" class="TCustomCombo">DestroyWindowHandle</method> to release the underlying Windows control. <method namespace="StdCtrls" class="TCustomCombo">TCustomCombo</method> overrides the inherited method to reset the EditHandle and ListHandle properties once the underlying Windows controls are gone.</para>
</comments>
</member>
<member name="M:StdCtrls.StdCtrls.SetItemIndex">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Sets the value of the ItemIndex property.</para>
<method namespace="StdCtrls" class="TCustomCombo">SetItemIndex</method> is the protected write implementation of the ItemIndex property. It selects an item in the drop-down list.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Value is the item to select, where 0 indicates the first item, 1 indicates the second item, and so on. A negative Value causes all items to be unselected.</para>
</comments>
</member>
<member name="M:StdCtrls.StdCtrls.AddItem">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Adds an item to the drop-down list of items.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Call <method namespace="StdCtrls" class="TCustomCombo">AddItem</method> to add a string, with an associated object, to the drop-down list.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Item is the string to add to the drop-down list.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">AObject is an object associated with that string. It can be accessed using the Objects property of the TStrings object that implements the Items property.</para>
</comments>
</member>
<member name="M:StdCtrls.StdCtrls.Clear">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Deletes all text from the edit box and all items from the Items list.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Call <method namespace="StdCtrls" class="TCustomCombo">Clear</method> to empty the combo box at runtime.</para>
<method namespace="StdCtrls" class="TCustomCombo">ClearSelection</method> checks whether an item in the drop-down list is currently selected. If so, it deselects the item (sets ItemIndex to ΓÇô1), and changes the Text property to an empty string.</para>
</comments>
</member>
<member name="M:StdCtrls.StdCtrls.CopySelection">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Copies the selected item in the drop-down list to another list control.</para>
<method namespace="StdCtrls" class="TCustomCombo">CopySelection</method> checks whether an item is selected in the drop-down list, and if so, adds it to the control specified by Destination, along with its associated object.</para>
<method namespace="StdCtrls" class="TCustomCombo">DeleteSelected</method> deletes the item specified by the ItemIndex property from the drop-down list.</para>
</comments>
</member>
<member name="M:StdCtrls.StdCtrls.SelectAll">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Selects the entire block of text in the edit box.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <method namespace="StdCtrls" class="TCustomCombo">SelectAll</method> to select the entire block of text in the edit box. To select only part of the text, use the SelStart and SelLength properties.</para>
<method namespace="StdCtrls" class="TCustomCombo">Destroy</method>s the combo box and frees its memory.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Do not call <method namespace="StdCtrls" class="TCustomCombo">Destroy</method> directly in an application. Call Free instead. Free verifies that the combo box is not nil, and only then calls <method namespace="StdCtrls" class="TCustomCombo">Destroy</method>.</para>
</comments>
</member>
<member name="P:StdCtrls.StdCtrls.DropDownCount">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Specifies the maximum number of items displayed in the drop-down list.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">By default, the drop-down list is long enough to contain eight items without requiring the user to scroll to see them all. To make the drop-down list smaller or larger, specify a number larger or smaller than eight as the <property namespace="StdCtrls" class="TCustomCombo">DropDownCount</property> value.</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">If the <property namespace="StdCtrls" class="TCustomCombo">DropDownCount</property> value is larger than the number of items in the Items property, the drop-down list will be just large enough to hold all the possible choices and no more. If the <property namespace="StdCtrls" class="TCustomCombo">DropDownCount</property> value is smaller then the number of item in the Items property, the drop down list will display a scroll bar.</para>
</comments>
</member>
<member name="P:StdCtrls.StdCtrls.EditHandle">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Returns the window handle for the edit portion of the combo box.</para>
</summary>
<comments>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">A combo box is composed of several windows: the combo box itself, the edit control, and the drop-down list. <property namespace="StdCtrls" class="TCustomCombo">EditHandle</property> is the window handle of the edit control portion. (The Handle property and the ListHandle property give the handles for the combo box itself and the drop-down list, respectively.)</para>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Use <property namespace="StdCtrls" class="TCustomCombo">EditHandle</property> when making Windows API calls addressed to the edit portion of the combo box.</para>
</comments>
</member>
<member name="P:StdCtrls.StdCtrls.ItemCount">
<summary>
<para xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">Specifies the number of items in the drop-down list.</para>