lazarus/docs/xml/lcl/toolwin.xml

365 lines
11 KiB
XML

<?xml version="1.0" encoding="UTF-8"?>
<!--
Documentation for LCL (Lazarus Component Library) and LazUtils (Lazarus
Utilities) are published under the Creative Commons Attribution-ShareAlike 4.0
International public license.
https://creativecommons.org/licenses/by-sa/4.0/legalcode.txt
https://gitlab.com/freepascal.org/lazarus/lazarus/-/blob/main/docs/cc-by-sa-4-0.txt
Copyright (c) 1997-2025, by the Lazarus Development Team.
-->
<fpdoc-descriptions>
<package name="lcl">
<!--
====================================================================
Toolwin
====================================================================
-->
<module name="Toolwin">
<short>
Implements a control which can paint its client area with optional borders.
</short>
<descr>
<p>
<file>toolwin.pp</file> implements a control which can paint its client area
with optional borders using a raised or lowered drawing style. It defines the
common ancestor for controls like TToolBar and TCoolBar.
</p>
</descr>
<!-- unresolved type references Visibility: default -->
<element name="Classes"/>
<element name="SysUtils"/>
<element name="LCLType"/>
<element name="LCLIntf"/>
<element name="Controls"/>
<element name="Graphics"/>
<element name="StdCtrls"/>
<element name="GraphType"/>
<!-- enumeration type Visibility: default -->
<element name="TEdgeBorder">
<short>
Enumeration with values that indicate the border edges to draw in TToolWindow.
</short>
<descr>
<p>
<var>TEdgeBorder</var> is an enumeration type with values that indicate the
border edges to draw in <var>TToolWindow</var>. Values in TEdgeBorder are
stored in the <var>TEdgeBorders</var> set type.
</p>
</descr>
<seealso>
<link id="TToolWindow"/>
<link id="TEdgeBorders"/>
</seealso>
</element>
<!-- enumeration value Visibility: default -->
<element name="TEdgeBorder.ebLeft">
<short>Draws the border on the left edge of the control.</short>
</element>
<!-- enumeration value Visibility: default -->
<element name="TEdgeBorder.ebTop">
<short>Draws the border on the top edge of the control.</short>
</element>
<!-- enumeration value Visibility: default -->
<element name="TEdgeBorder.ebRight">
<short>Draws the border on the right edge of the control.</short>
</element>
<!-- enumeration value Visibility: default -->
<element name="TEdgeBorder.ebBottom">
<short>Draws the border on the bottom edge of the control.</short>
</element>
<!-- set type Visibility: default -->
<element name="TEdgeBorders">
<short>
Set used to store TEdgeBorder enumeration values.
</short>
<descr>
<p>
<var>TEdgeBorders</var> is a set type used to store values from the
<var>TEdgeBorder</var> enumeration. TEdgeBorders is the type used for the
<var>TToolWindow.EdgeBorders</var> property.
</p>
</descr>
<seealso>
<link id="TEdgeBorder"/>
<link id="TToolWindow.EdgeBorders"/>
</seealso>
</element>
<!-- enumeration type Visibility: default -->
<element name="TEdgeStyle">
<short>
Enumeration type with values that specify the drawing style for borders.
</short>
<descr>
<p>
<var>TEdgeStyle</var> is an enumeration type with values that specify the
drawing style for borders on a control. TEdgeStyle is the type used to
implement the <var>TToolWindow.EdgeInner</var> and
<var>TToolWindow.EdgeOuter</var> properties.
</p>
</descr>
<seealso>
<link id="TToolWindow.EdgeInner"/>
<link id="TToolWindow.EdgeOuter"/>
</seealso>
</element>
<!-- enumeration value Visibility: default -->
<element name="TEdgeStyle.esNone">
<short>No edge style is used.</short>
</element>
<!-- enumeration value Visibility: default -->
<element name="TEdgeStyle.esRaised">
<short>Edge is drawn with a raised appearance.</short>
</element>
<!-- enumeration value Visibility: default -->
<element name="TEdgeStyle.esLowered">
<short>Edge is drawn with a lowered or sunken appearance.</short>
</element>
<!-- object Visibility: default -->
<element name="TToolWindow">
<short>
Implements a control which can paint its client area with borders.
</short>
<descr>
<p>
<var>TToolWindow</var> is a <var>TCustomControl</var> which supports sizing
and drawing its client area with borders. TToolWindow contains properties
used to specify the borders (inner and outer) for the control. Methods are
provided which adjust the client rectangle for the control, and paint the
control to its canvas handle with the desired border edges and style.
</p>
<p>
TToolWindow is the ancestor for <var>TToolBar</var> and <var>TCoolBar</var>.
</p>
</descr>
<seealso>
<link id="#lcl.controls.TCustomControl">TCustomControl</link>
<link id="#lcl.comctrls.TToolbar">TToolbar</link>
<link id="#lcl.comctrls.TCustomCoolbar">TCustomCoolbar</link>
<link id="#lcl.comctrls.TCoolbar">TCoolbar</link>
</seealso>
</element>
<!-- variable Visibility: private -->
<element name="TToolWindow.FEdgeBorders"/>
<element name="TToolWindow.FEdgeInner"/>
<element name="TToolWindow.FEdgeOuter"/>
<!-- procedure Visibility: private -->
<element name="TToolWindow.SetEdgeBorders">
<short>Sets the value in the EdgeBorders property.</short>
<descr></descr>
<seealso>
<link id="TToolWindow.EdgeBorders"/>
</seealso>
</element>
<element name="TToolWindow.SetEdgeBorders.Value">
<short>New value for the property.</short>
</element>
<!-- procedure Visibility: private -->
<element name="TToolWindow.SetEdgeInner">
<short>Sets the value for the EdgeInner property.</short>
<descr></descr>
<seealso>
<link id="TToolWindow.EdgeInner"/>
</seealso>
</element>
<element name="TToolWindow.SetEdgeInner.Value">
<short>New value for the property.</short>
</element>
<!-- procedure Visibility: private -->
<element name="TToolWindow.SetEdgeOuter">
<short>Sets the value in the EdgeOuter property.</short>
<descr></descr>
<seealso>
<link id="TToolWindow.EdgeOuter"/>
</seealso>
</element>
<element name="TToolWindow.SetEdgeOuter.Value">
<short>New value for the property.</short>
</element>
<!-- variable Visibility: protected -->
<element name="TToolWindow.FUpdateCount">
<short>Internal counter used in BeginUpdate and EndUpdate.</short>
</element>
<!-- procedure Visibility: public -->
<element name="TToolWindow.AdjustClientRect">
<short>
Adjusts the client rectangle when borders are drawn for the control.
</short>
<descr>
<p>
<var>AdjustClientRect</var> is a procedure used to adjust the specified
client rectangle when borders are drawn for the control. AdjustClientRect
ensures that the client rectangle is increased in size according to values in
<var>EdgeBorders</var> and the drawing styles in <var>EdgeOuter</var> and
<var>EdgeInner</var>.
</p>
</descr>
<seealso>
<link id="TToolWindow.EdgeBorders"/>
<link id="TToolWindow.EdgeOuter"/>
<link id="TToolWindow.EdgeInner"/>
</seealso>
</element>
<element name="TToolWindow.AdjustClientRect.ARect">
<short>Client rectangle for the control.</short>
</element>
<!-- procedure Visibility: protected -->
<element name="TToolWindow.Paint">
<short>
Draws the control with the borders and style needed.
</short>
<descr>
<p>
<var>Paint</var> is an overridden procedure that draws the control with the
borders and styles indicated in <var>EdgeBorders</var>, <var>EdgeInner</var>,
and <var>EdgeOuter</var>. Paint calls <var>DrawEdge</var> to render the
control, and calls the inherited <var>Paint</var> method.
</p>
</descr>
<seealso>
<link id="TToolWindow.EdgeBorders"/>
<link id="TToolWindow.EdgeOuter"/>
<link id="TToolWindow.EdgeInner"/>
</seealso>
</element>
<!-- constructor Visibility: public -->
<element name="TToolWindow.Create">
<short>Constructor for the class instance.</short>
<descr>
<p>
<var>Create</var> is the constructor for the class instance, and calls the
inherited constructor using <var>TheOwner</var> as the owner of the control.
Create sets the default values for the following properties:
</p>
<dl>
<dt>EdgeBorders</dt>
<dd>Set to the value [ebLeft, ebTop, ebRight, ebBottom]</dd>
<dt>EdgeInner</dt>
<dd>esRaised</dd>
<dt>EdgeOuter</dt>
<dd>esLowered</dd>
</dl>
</descr>
<seealso>
<link id="TToolWindow.EdgeBorders"/>
<link id="TToolWindow.EdgeOuter"/>
<link id="TToolWindow.EdgeInner"/>
</seealso>
</element>
<element name="TToolWindow.Create.TheOwner">
<short>Owner of the class instance.</short>
</element>
<!-- procedure Visibility: public -->
<element name="TToolWindow.BeginUpdate">
<short>Increments the internal counter for buffering calls to Update.</short>
<descr></descr>
<seealso></seealso>
</element>
<!-- procedure Visibility: public -->
<element name="TToolWindow.EndUpdate">
<short>Decrements the internal counter for buffering calls to Update.</short>
<descr></descr>
<seealso></seealso>
</element>
<!-- property Visibility: public -->
<element name="TToolWindow.EdgeBorders">
<short>
Indicates the edges to be drawn with a border on the control.
</short>
<descr>
<p>
<var>EdgeBorders</var> is a <var>TEdgeBorders</var> property that indicates
the edges to be drawn with a border on the control. The default value for
EdgeBorders is <b>[ebLeft, ebTop, ebRight, ebBottom]</b>. EdgeBorders is used
in the <var>Paint</var> method to render the control with borders in the
specified positions with the drawing style in <var>EdgeInner</var> and
<var>EdgeOuter</var>.
</p>
</descr>
<seealso>
<link id="TEdgeBorders"/>
<link id="TToolWindow.EdgeBorders"/>
<link id="TToolWindow.EdgeOuter"/>
<link id="TToolWindow.EdgeInner"/>
</seealso>
</element>
<!-- property Visibility: public -->
<element name="TToolWindow.EdgeInner">
<short>
Specifies the drawing style used for the inner border of the control.
</short>
<descr>
<p>
<var>EdgeInner</var> is a <var>TEdgeStyle</var> property that specifies the
drawing style used for the inner border of the control. The default value for
the property is <var>esRaised</var>.
</p>
<p>
EdgeInner is used, along with <var>EdgeOuter</var>, to give the control a
beveled 3D appearance. Use <var>EdgeOuter</var> to control the drawing style
for the outer border on the control.
</p>
<p>
Use <var>EdgeBorders</var> to specify the positions (for both inner and
outer) where borders are drawn.
</p>
</descr>
<seealso>
<link id="TEdgeStyle"/>
<link id="TToolWindow.EdgeOuter"/>
<link id="TToolWindow.EdgeBorders"/>
</seealso>
</element>
<!-- property Visibility: public -->
<element name="TToolWindow.EdgeOuter">
<short>
Specifies the drawing style used for the outer border of the control.
</short>
<descr>
<p>
<var>EdgeOuter</var> is a <var>TEdgeStyle</var> property that specifies the
drawing style used for the outer border of the control. The default value for
the property is <var>esLowered</var>.
</p>
<p>
EdgeOuter is used, along with <var>EdgeInner</var>, to give the control a
beveled 3D appearance. Use <var>EdgeInner</var> to control the drawing style
for the inner border on the control.
</p>
<p>
Use <var>EdgeBorders</var> to specify the positions (for both inner and
outer) where borders are drawn.
</p>
</descr>
<seealso>
<link id="TEdgeStyle"/>
<link id="TToolWindow.EdgeInner"/>
<link id="TToolWindow.EdgeBorders"/>
</seealso>
</element>
</module>
<!-- Toolwin -->
</package>
</fpdoc-descriptions>