<?xml version="1.0" encoding="UTF-8"?>
<fpdoc-descriptions>
  <package name="lcl">
    <!--
  ====================================================================
    LCLClasses
  ====================================================================
-->
    <module name="LCLClasses">
      <short>Defines the base class for all LCL TComponents including controls</short>
      <descr/>
      <!-- unresolved type reference Visibility: default -->
      <element name="Classes">
        <short/>
        <descr/>
        <seealso/>
      </element>
      <!-- unresolved type reference Visibility: default -->
      <element name="WSLCLClasses">
        <short/>
        <descr/>
        <seealso/>
      </element>
<!-- object Visibility: default -->
      <element name="TLCLComponent">
        <short>The base class for LCL components associated with widgets.
        </short>
        <descr/>
        <errors/>
        <seealso/>
      </element>
      <!-- variable Visibility: private -->
      <element name="TLCLComponent.FWidgetSetClass" link="TLCLComponent.WidgetSetClass"/>
      <element name="TLCLComponent.FLCLRefCount" link="TLCLComponent.LCLRefCount"/>
      <!-- property Visibility: protected -->
      <element name="TLCLComponent.WidgetSetClass">
        <short>The widget for this component is derived from WidgetSetClass.
        </short>
        <descr/>
        <seealso/>
      </element>
      <element name="TLCLComponent.WSRegisterClass">
        <short>Registers this component class with the current WidgetSet.
        </short>
      </element>
      <!-- class function Visibility: default -->
      <element name="TLCLComponent.GetWSComponentClass">
        <short>This method allows descendents to override the WidgetSetClass.
        </short>
        <descr>
        </descr>
        <errors>
        </errors>
        <seealso>
        </seealso>
      </element>
      <element name="TLCLComponent.GetWSComponentClass.Result">
        <short/>
      </element>
      <element name="TLCLComponent.GetWSComponentClass.ASelf">
        <short/>
      </element>
      <element name="TLCLComponent.Create"/>
      <element name="TLCLComponent.Create.TheOwner">
        <short/>
      </element>
      <element name="TLCLComponent.Destroy"/>
      <!-- function Visibility: public -->
      <element name="TLCLComponent.NewInstance">
        <short>Registers the class and initializes WidgetSetClass.
        </short>
        <descr/>
        <errors/>
        <seealso>
          <link id="TLCLComponent.WidgetSetClass"/>
          <link id="#rtl.System.TObject.NewInstance">TObject.NewInstance</link>
        </seealso>
      </element>
      <element name="TLCLComponent.NewInstance.Result">
        <short/>
      </element>
      <!-- procedure Visibility: public -->
      <element name="TLCLComponent.RemoveAllHandlersOfObject">
        <short>Override this method to remove all references to notification handlers in AnObject.
        </short>
        <descr>An override is required as soon as a component allows to add notification handlers.
          Then all such handlers must be removed, when their owner (AnObject) is destroyed.
        </descr>
        <errors/>
        <seealso/>
      </element>
      <element name="TLCLComponent.RemoveAllHandlersOfObject.AnObject">
        <short>The object whose handlers shall be removed.
        </short>
      </element>
      <element name="TLCLComponent.IncLCLRefCount" link="TLCLComponent.LCLRefCount"/>
      <element name="TLCLComponent.DecLCLRefCount" link="TLCLComponent.LCLRefCount"/>
      <element name="TLCLComponent.LCLRefCount">
        <short>The number of references to this component.</short>
        <descr>
        </descr>
      <notes><note>Which are the possible owners of such references?</note>
        </notes>
      </element>
<!-- object Visibility: default -->
      <element name="TLCLReferenceComponent">
        <short>Base class for all components having an associated widget.
        </short>
        <descr>
          <p>
            The widget is created by the LCL control whenever required,
            and its reference is stored in FReferencePtr.
            This reference is for internal use by the LCL control, not by application code.
          </p>
          <p>This reference is different from the OS/window manager specific window Handle.</p>
          <p>Applications only can send messages to a windowed control, using its window Handle.</p>
        </descr>
        <seealso>
          <link id="TLCLReferenceComponent.ReferenceNeeded"/>
        </seealso>
      <notes><note>can be?</note>
        </notes>
      </element>
      <!-- variable Visibility: private -->
      <element name="TLCLReferenceComponent.FReferencePtr">
        <short>Pointer to a widget class Reference.</short>
        <descr>
        </descr>
        <seealso>
        </seealso>
      </element>
      <!-- variable Visibility: private -->
      <element name="TLCLReferenceComponent.FCreating">
        <short>Set while we are creating the Reference.</short>
        <descr>
        </descr>
        <seealso>
        </seealso>
      </element>
      <!-- function Visibility: private -->
      <element name="TLCLReferenceComponent.GetHandle" link="TLCLReferenceComponent.Handle"/>
      <element name="TLCLReferenceComponent.GetHandle.Result">
        <short/>
      </element>
      <!-- function Visibility: private -->
      <element name="TLCLReferenceComponent.GetReferenceAllocated">
        <short>Checks for a valid widget reference.
        </short>
        <descr>
        </descr>
        <errors>
        </errors>
        <seealso>
        </seealso>
      </element>
      <element name="TLCLReferenceComponent.GetReferenceAllocated.Result">
        <short/>
      </element>
      <!-- function Visibility: protected -->
      <element name="TLCLReferenceComponent.CreateParams">
        <short>Override this method to supply specific widget creation parameters.
        </short>
      </element>
      <element name="TLCLReferenceComponent.CreateParams.AParams">
        <short>The parameter record to update.</short>
      </element>
      <!-- function Visibility: protected -->
      <element name="TLCLReferenceComponent.DestroyReference">
        <short>Destroys the reference object.
        </short>
      </element>
      <!-- function Visibility: protected -->
      <element name="TLCLReferenceComponent.GetReferenceHandle">
        <short>Override this method to return the Handle from the reference
        </short>
      <notes><note>what is Handle?</note>
        </notes>
      </element>
      <element name="TLCLReferenceComponent.GetReferenceHandle.Result">
        <short/>
      </element>
      <!-- function Visibility: protected -->
      <element name="TLCLReferenceComponent.ReferenceCreated">
        <short>Called after the Reference is created.</short>
      </element>
      <!-- function Visibility: protected -->
      <element name="TLCLReferenceComponent.ReferenceDestroying">
        <short>Called before the Reference is destroyed</short>
      </element>
      <!-- function Visibility: protected -->
      <element name="TLCLReferenceComponent.ReferenceNeeded">
        <short>Creates a Reference, if not already done.
        </short>
      </element>
      <!-- function Visibility: protected -->
      <element name="TLCLReferenceComponent.WSCreateReference">
        <short>Tells the widgetset to create a Reference.
        </short>
        <descr>This implementation returns Nil, should be overriden in every derived class.
        </descr>
      </element>
      <element name="TLCLReferenceComponent.WSCreateReference.Result">
        <short/>
      </element>
      <element name="TLCLReferenceComponent.WSCreateReference.AParams">
        <short/>
      </element>
      <!-- function Visibility: protected -->
      <element name="TLCLReferenceComponent.WSDestroyReference">
        <short>Tells the widgetset to destroy the Reference.</short>
      </element>
      <!-- function Visibility: public -->
      <element name="TLCLReferenceComponent.Destroy"/>
      <element name="TLCLReferenceComponent.Handle">
        <short>Get the Handle of this component.</short>
        <descr>The Handle is  sort of pointer or reference, allocated by the operating system or widgetset to this component.
          A window handle can be used for sending messages to the component.</descr>
      <notes><note>?</note>
        </notes>
      </element>
      <element name="TLCLReferenceComponent.HandleAllocated" link="TLCLReferenceComponent.ReferenceAllocated"/>
      <element name="TLCLReferenceComponent.ReferenceAllocated">
        <short>If True, a Reference has been allocated for this component.
        </short>
      </element>
    </module>
    <!-- LCLClasses -->
  </package>
</fpdoc-descriptions>
