<?xml version="1.0" ?><namespace name="FMX.Types" platform="Win32">
  <const name="FireMonkeyVersion" type="Integer" file="FMX.Types.pas" line="25">
    <value>
      $10E
    </value>
  </const>
  <variable name="GlobalUseHWEffects" type="Boolean" visibility="public" file="FMX.Types.pas" line="31" symflags="deprecated">
  </variable>
  <variable name="GlobalDisableFocusEffect" type="Boolean" visibility="public" file="FMX.Types.pas" line="33"/>
  <variable name="GlobalUseDX" type="Boolean" visibility="public" file="FMX.Types.pas" line="35"/>
  <variable name="GlobalUseDXInDX9Mode" type="Boolean" visibility="public" file="FMX.Types.pas" line="37"/>
  <variable name="GlobalUseDXSoftware" type="Boolean" visibility="public" file="FMX.Types.pas" line="39"/>
  <variable name="GlobalUseDirect2D" type="Boolean" visibility="public" file="FMX.Types.pas" line="41"/>
  <variable name="GlobalUseGDIPlusClearType" type="Boolean" visibility="public" file="FMX.Types.pas" line="43"/>
  <variable name="DigitRoundSize" type="TRoundToRange" visibility="public" file="FMX.Types.pas" line="46">
    <devnotes>
       <summary>The number of decimal digits for the rounding floating point
       values.</summary>
    </devnotes>
  </variable>
  <variable name="GlobalUseGPUCanvas" type="Boolean" visibility="public" file="FMX.Types.pas" line="48"/>
  <variable name="GlobalUseMetal" type="Boolean" visibility="public" file="FMX.Types.pas" line="50">
    <devnotes>
       <summary>Allow using Metal for UI rendering</summary>
    </devnotes>
  </variable>
  <variable name="GlobalEventDrivenDisplayUpdates" type="Boolean" visibility="public" file="FMX.Types.pas" line="52">
    <devnotes>
       <summary>If this value is YES, draw loop is paused and updates are event-driven (Metal only)</summary>
    </devnotes>
  </variable>
  <variable name="GlobalPreferredFramesPerSecond" type="Integer" visibility="public" file="FMX.Types.pas" line="54">
    <devnotes>
       <summary>The rate at which the draw loop update its contents (Metal only)</summary>
    </devnotes>
  </variable>
  <variable name="GlobalUseDX10" type="Boolean" visibility="public" file="FMX.Types.pas" line="56" symflags="deprecated">
  </variable>
  <variable name="GlobalUseDX10Software" type="Boolean" visibility="public" file="FMX.Types.pas" line="57" symflags="deprecated">
  </variable>
  <enum name="TVKAutoShowMode" file="FMX.Types.pas" line="60">
    <element value="0" name="DefinedBySystem" file="FMX.Types.pas" line="60"/>
    <element value="1" name="Never" file="FMX.Types.pas" line="60"/>
    <element value="2" name="Always" file="FMX.Types.pas" line="60"/>
  </enum>
  <variable name="VKAutoShowMode" type="TVKAutoShowMode" visibility="public" file="FMX.Types.pas" line="63"/>
  <enum name="TOSPlatform" file="FMX.Types.pas" line="66">
    <element value="0" name="Windows" file="FMX.Types.pas" line="66"/>
    <element value="1" name="OSX" file="FMX.Types.pas" line="66"/>
    <element value="2" name="iOS" file="FMX.Types.pas" line="66"/>
    <element value="3" name="Android" file="FMX.Types.pas" line="66"/>
    <element value="4" name="Linux" file="FMX.Types.pas" line="66"/>
  </enum>
  <array name="TPointArray" low="0" high="0" file="FMX.Types.pas" line="68">
    <element type="TPointF"/>
  </array>
  <array name="TLongByteArray" low="0" high="2147483646" file="FMX.Types.pas" line="70">
    <element type="Byte"/>
  </array>
  <pointer name="PLongByteArray" type="TLongByteArray" indircnt="1" file="FMX.Types.pas" line="71"/>
  <enum name="TCorner" file="FMX.Types.pas" line="74">
    <element value="0" name="TopLeft" file="FMX.Types.pas" line="74"/>
    <element value="1" name="TopRight" file="FMX.Types.pas" line="74"/>
    <element value="2" name="BottomLeft" file="FMX.Types.pas" line="74"/>
    <element value="3" name="BottomRight" file="FMX.Types.pas" line="74"/>
  </enum>
  <set name="TCorners" type="TCorner" file="FMX.Types.pas" line="76">
    <element name="TopLeft"/>
    <element name="TopRight"/>
    <element name="BottomLeft"/>
    <element name="BottomRight"/>
  </set>
  <enum name="TCornerType" file="FMX.Types.pas" line="78">
    <element value="0" name="Round" file="FMX.Types.pas" line="78"/>
    <element value="1" name="Bevel" file="FMX.Types.pas" line="78"/>
    <element value="2" name="InnerRound" file="FMX.Types.pas" line="78"/>
    <element value="3" name="InnerLine" file="FMX.Types.pas" line="78"/>
  </enum>
  <pointer name="PCornersF" type="TCornersF" indircnt="1" file="FMX.Types.pas" line="81"/>
  <array name="TCornersF" low="0" high="3" file="FMX.Types.pas" line="82">
    <element type="TPointF"/>
  </array>
  <enum name="TSide" file="FMX.Types.pas" line="84">
    <element value="0" name="Top" file="FMX.Types.pas" line="84"/>
    <element value="1" name="Left" file="FMX.Types.pas" line="84"/>
    <element value="2" name="Bottom" file="FMX.Types.pas" line="84"/>
    <element value="3" name="Right" file="FMX.Types.pas" line="84"/>
  </enum>
  <set name="TSides" type="TSide" file="FMX.Types.pas" line="86">
    <element name="Top"/>
    <element name="Left"/>
    <element name="Bottom"/>
    <element name="Right"/>
  </set>
  <enum name="TTextAlign" file="FMX.Types.pas" line="88">
    <element value="0" name="Center" file="FMX.Types.pas" line="88"/>
    <element value="1" name="Leading" file="FMX.Types.pas" line="88"/>
    <element value="2" name="Trailing" file="FMX.Types.pas" line="88"/>
  </enum>
  <helper name="TTextAlignHelper" for="TTextAlign" file="FMX.Types.pas" line="90">
    <members>
      <function name="AsHorzRectAlign" visibility="public" procflags="helper inline" file="FMX.Types.pas" line="93">
        <devnotes>
           <summary> This method converts <b>TTextAlign</b> value to <b>THorzRectAlign</b> </summary>
        </devnotes>
        <parameters>
          <retval type="THorzRectAlign"/>
        </parameters>
      </function>
      <function name="AsVertRectAlign" visibility="public" procflags="helper inline" file="FMX.Types.pas" line="95">
        <devnotes>
           <summary> This method converts <b>TTextAlign</b> value to <b>TVertRectAlign</b> </summary>
        </devnotes>
        <parameters>
          <retval type="TVertRectAlign"/>
        </parameters>
      </function>
    </members>
  </helper>
  <helper name="TVertRectAlignHelper" for="TVertRectAlign" file="FMX.Types.pas" line="98">
    <members>
      <function name="AsTextAlign" visibility="public" procflags="helper inline" file="FMX.Types.pas" line="101">
        <devnotes>
           <summary> This method converts <b>TVertRectAlign</b> value to <b>TTextAlign</b> </summary>
        </devnotes>
        <parameters>
          <retval type="TTextAlign"/>
        </parameters>
      </function>
    </members>
  </helper>
  <helper name="THorzRectAlignHelper" for="THorzRectAlign" file="FMX.Types.pas" line="104">
    <members>
      <function name="AsTextAlign" visibility="public" procflags="helper inline" file="FMX.Types.pas" line="107">
        <devnotes>
           <summary> This method converts <b>THorzRectAlign</b> value to <b>TTextAlign</b> </summary>
        </devnotes>
        <parameters>
          <retval type="TTextAlign"/>
        </parameters>
      </function>
    </members>
  </helper>
  <enum name="TTextTrimming" file="FMX.Types.pas" line="110">
    <element value="0" name="None" file="FMX.Types.pas" line="110"/>
    <element value="1" name="Character" file="FMX.Types.pas" line="110"/>
    <element value="2" name="Word" file="FMX.Types.pas" line="110"/>
  </enum>
  <enum name="TPrefixStyle" file="FMX.Types.pas" line="113">
    <devnotes>
       <summary>A type that text controls use to specify whether to consider the
       ampersand (&amp;) as a special character</summary>
    </devnotes>
    <element value="0" name="HidePrefix" file="FMX.Types.pas" line="113"/>
    <element value="1" name="NoPrefix" file="FMX.Types.pas" line="113"/>
  </enum>
  <enum name="TStyledSetting" file="FMX.Types.pas" line="115">
    <element value="0" name="Family" file="FMX.Types.pas" line="115"/>
    <element value="1" name="Size" file="FMX.Types.pas" line="115"/>
    <element value="2" name="Style" file="FMX.Types.pas" line="115"/>
    <element value="3" name="FontColor" file="FMX.Types.pas" line="115"/>
    <element value="4" name="Other" file="FMX.Types.pas" line="115"/>
  </enum>
  <set name="TStyledSettings" type="TStyledSetting" file="FMX.Types.pas" line="117">
    <element name="Family"/>
    <element name="Size"/>
    <element name="Style"/>
    <element name="FontColor"/>
    <element name="Other"/>
  </set>
  <enum name="TMenuItemChange" file="FMX.Types.pas" line="119">
    <element value="0" name="Enabled" file="FMX.Types.pas" line="119"/>
    <element value="1" name="Visible" file="FMX.Types.pas" line="119"/>
    <element value="2" name="Text" file="FMX.Types.pas" line="119"/>
    <element value="3" name="Shortcut" file="FMX.Types.pas" line="119"/>
    <element value="4" name="Checked" file="FMX.Types.pas" line="119"/>
    <element value="5" name="Bitmap" file="FMX.Types.pas" line="119"/>
  </enum>
  <set name="TMenuItemChanges" type="TMenuItemChange" file="FMX.Types.pas" line="120">
    <element name="Enabled"/>
    <element name="Visible"/>
    <element name="Text"/>
    <element name="Shortcut"/>
    <element name="Checked"/>
    <element name="Bitmap"/>
  </set>
  <enum name="TScreenOrientation" file="FMX.Types.pas" line="122">
    <element value="0" name="Portrait" file="FMX.Types.pas" line="122"/>
    <element value="1" name="Landscape" file="FMX.Types.pas" line="122"/>
    <element value="2" name="InvertedPortrait" file="FMX.Types.pas" line="122"/>
    <element value="3" name="InvertedLandscape" file="FMX.Types.pas" line="122"/>
  </enum>
  <set name="TScreenOrientations" type="TScreenOrientation" file="FMX.Types.pas" line="123">
    <element name="Portrait"/>
    <element name="Landscape"/>
    <element name="InvertedPortrait"/>
    <element name="InvertedLandscape"/>
  </set>
  <enum name="TPixelFormat" file="FMX.Types.pas" line="125">
    <element value="0" name="None" file="FMX.Types.pas" line="125"/>
    <element value="1" name="RGB" file="FMX.Types.pas" line="125"/>
    <element value="2" name="RGBA" file="FMX.Types.pas" line="125"/>
    <element value="3" name="BGR" file="FMX.Types.pas" line="125"/>
    <element value="4" name="BGRA" file="FMX.Types.pas" line="125"/>
    <element value="5" name="RGBA16" file="FMX.Types.pas" line="125"/>
    <element value="6" name="BGR_565" file="FMX.Types.pas" line="125"/>
    <element value="7" name="BGRA4" file="FMX.Types.pas" line="125"/>
    <element value="8" name="BGR4" file="FMX.Types.pas" line="125"/>
    <element value="9" name="BGR5_A1" file="FMX.Types.pas" line="125"/>
    <element value="10" name="BGR5" file="FMX.Types.pas" line="125"/>
    <element value="11" name="BGR10_A2" file="FMX.Types.pas" line="125"/>
    <element value="12" name="RGB10_A2" file="FMX.Types.pas" line="125"/>
    <element value="13" name="L" file="FMX.Types.pas" line="125"/>
    <element value="14" name="LA" file="FMX.Types.pas" line="125"/>
    <element value="15" name="LA4" file="FMX.Types.pas" line="126"/>
    <element value="16" name="L16" file="FMX.Types.pas" line="126"/>
    <element value="17" name="A" file="FMX.Types.pas" line="126"/>
    <element value="18" name="R16F" file="FMX.Types.pas" line="126"/>
    <element value="19" name="RG16F" file="FMX.Types.pas" line="126"/>
    <element value="20" name="RGBA16F" file="FMX.Types.pas" line="126"/>
    <element value="21" name="R32F" file="FMX.Types.pas" line="126"/>
    <element value="22" name="RG32F" file="FMX.Types.pas" line="126"/>
    <element value="23" name="RGBA32F" file="FMX.Types.pas" line="126"/>
  </enum>
  <const name="PixelFormatBytes" type="array[0..23] of Integer" visibility="public" file="FMX.Types.pas" line="131"/>
  <const name="NullRect" type="TRectF" visibility="public" file="FMX.Types.pas" line="136"/>
  <const name="AllCorners" type="TCorners" visibility="public" file="FMX.Types.pas" line="138"/>
  <const name="AllSides" type="TSides" visibility="public" file="FMX.Types.pas" line="141"/>
  <const name="ClosePolygon" type="TPointF" visibility="public" file="FMX.Types.pas" line="143" symflags="deprecated">
  </const>
  <const name="PolygonPointBreak" type="TPointF" visibility="public" file="FMX.Types.pas" line="148">
    <devnotes>
       <summary>A special polygon point marker typically used for converting paths to polygons and vice-versa,
       usually indicating path closure. For the rendering methods, this marker has no meaning and the actual
       interpretation may be platform-dependent.</summary>
    </devnotes>
  </const>
  <const name="AllStyledSettings" type="TStyledSettings" visibility="public" file="FMX.Types.pas" line="150"/>
  <const name="DefaultStyledSettings" type="TStyledSettings" visibility="public" file="FMX.Types.pas" line="155"/>
  <const name="InvalidSize" type="TSizeF" visibility="public" file="FMX.Types.pas" line="160"/>
  <const name="AlignmentToTTextAlign" type="array[0..2] of TTextAlign" visibility="public" file="FMX.Types.pas" line="162"/>
  <type name="TGestureID" type="shortint" loBound="-1024" hiBound="511" file="FMX.Types.pas" line="166"/>
  <enum name="TInteractiveGestureFlag" file="FMX.Types.pas" line="168">
    <element value="0" name="gfBegin" file="FMX.Types.pas" line="168"/>
    <element value="1" name="gfInertia" file="FMX.Types.pas" line="168"/>
    <element value="2" name="gfEnd" file="FMX.Types.pas" line="168"/>
  </enum>
  <set name="TInteractiveGestureFlags" type="TInteractiveGestureFlag" file="FMX.Types.pas" line="169">
    <element name="gfBegin"/>
    <element name="gfInertia"/>
    <element name="gfEnd"/>
  </set>
  <struct name="TGestureEventInfo" size="48" file="FMX.Types.pas" line="171">
    <field name="GestureID" type="TGestureID" visibility="public" size="2" offset="0" file="FMX.Types.pas" line="172"/>
    <field name="Location" type="TPointF" visibility="public" size="8" offset="4" file="FMX.Types.pas" line="173"/>
    <field name="Flags" type="TInteractiveGestureFlags" visibility="public" size="1" offset="12" file="FMX.Types.pas" line="174"/>
    <field name="Angle" type="Double" visibility="public" size="8" offset="16" file="FMX.Types.pas" line="175"/>
    <field name="InertiaVector" type="TPointF" visibility="public" size="8" offset="24" file="FMX.Types.pas" line="176"/>
    <field name="Distance" type="Integer" visibility="public" size="4" offset="32" file="FMX.Types.pas" line="177"/>
    <field name="TapLocation" type="TPointF" visibility="public" size="8" offset="36" file="FMX.Types.pas" line="178"/>
  </struct>
  <type name="TGestureEvent" file="FMX.Types.pas" line="181" procflags="closure">
  </type>
  <struct name="TTouch" size="8" file="FMX.Types.pas" line="184">
    <field name="Location" type="TPointF" visibility="public" size="8" offset="0" file="FMX.Types.pas" line="185"/>
  </struct>
  <array name="TTouches" file="FMX.Types.pas" line="187">
    <element type="TTouch"/>
  </array>
  <enum name="TTouchAction" file="FMX.Types.pas" line="189">
    <element value="0" name="None" file="FMX.Types.pas" line="189"/>
    <element value="1" name="Up" file="FMX.Types.pas" line="189"/>
    <element value="2" name="Down" file="FMX.Types.pas" line="189"/>
    <element value="3" name="Move" file="FMX.Types.pas" line="189"/>
    <element value="4" name="Cancel" file="FMX.Types.pas" line="189"/>
  </enum>
  <set name="TTouchActions" type="TTouchAction" file="FMX.Types.pas" line="190">
    <element name="None"/>
    <element name="Up"/>
    <element name="Down"/>
    <element name="Move"/>
    <element name="Cancel"/>
  </set>
  <enum name="TFormStyle" file="FMX.Types.pas" line="193">
    <element value="0" name="Normal" file="FMX.Types.pas" line="193"/>
    <element value="1" name="Popup" file="FMX.Types.pas" line="193"/>
    <element value="2" name="StayOnTop" file="FMX.Types.pas" line="193"/>
  </enum>
  <enum name="TAlignLayout" file="FMX.Types.pas" line="194">
    <element value="0" name="None" file="FMX.Types.pas" line="194"/>
    <element value="1" name="Top" file="FMX.Types.pas" line="194"/>
    <element value="2" name="Left" file="FMX.Types.pas" line="194"/>
    <element value="3" name="Right" file="FMX.Types.pas" line="194"/>
    <element value="4" name="Bottom" file="FMX.Types.pas" line="194"/>
    <element value="5" name="MostTop" file="FMX.Types.pas" line="194"/>
    <element value="6" name="MostBottom" file="FMX.Types.pas" line="194"/>
    <element value="7" name="MostLeft" file="FMX.Types.pas" line="194"/>
    <element value="8" name="MostRight" file="FMX.Types.pas" line="194"/>
    <element value="9" name="Client" file="FMX.Types.pas" line="194"/>
    <element value="10" name="Contents" file="FMX.Types.pas" line="194"/>
    <element value="11" name="Center" file="FMX.Types.pas" line="194"/>
    <element value="12" name="VertCenter" file="FMX.Types.pas" line="194"/>
    <element value="13" name="HorzCenter" file="FMX.Types.pas" line="194"/>
    <element value="14" name="Horizontal" file="FMX.Types.pas" line="194"/>
    <element value="15" name="Vertical" file="FMX.Types.pas" line="194"/>
    <element value="16" name="Scale" file="FMX.Types.pas" line="194"/>
    <element value="17" name="Fit" file="FMX.Types.pas" line="194"/>
    <element value="18" name="FitLeft" file="FMX.Types.pas" line="194"/>
    <element value="19" name="FitRight" file="FMX.Types.pas" line="194"/>
  </enum>
  <enum name="TImeMode" file="FMX.Types.pas" line="196">
    <element value="0" name="imDontCare" file="FMX.Types.pas" line="196"/>
    <element value="1" name="imDisable" file="FMX.Types.pas" line="197"/>
    <element value="2" name="imClose" file="FMX.Types.pas" line="198"/>
    <element value="3" name="imOpen" file="FMX.Types.pas" line="199"/>
    <element value="4" name="imSAlpha" file="FMX.Types.pas" line="200"/>
    <element value="5" name="imAlpha" file="FMX.Types.pas" line="201"/>
    <element value="6" name="imHira" file="FMX.Types.pas" line="202"/>
    <element value="7" name="imSKata" file="FMX.Types.pas" line="203"/>
    <element value="8" name="imKata" file="FMX.Types.pas" line="204"/>
    <element value="9" name="imChineseClose" file="FMX.Types.pas" line="205"/>
    <element value="10" name="imOnHalf" file="FMX.Types.pas" line="206"/>
    <element value="11" name="imSHanguel" file="FMX.Types.pas" line="207"/>
    <element value="12" name="imHanguel" file="FMX.Types.pas" line="208"/>
  </enum>
  <enum name="TDragOperation" file="FMX.Types.pas" line="211">
    <element value="0" name="None" file="FMX.Types.pas" line="211"/>
    <element value="1" name="Move" file="FMX.Types.pas" line="211"/>
    <element value="2" name="Copy" file="FMX.Types.pas" line="211"/>
    <element value="3" name="Link" file="FMX.Types.pas" line="211"/>
  </enum>
  <struct name="TDragObject" size="32" file="FMX.Types.pas" line="213">
    <field name="Source" type="TObject" visibility="public" size="4" offset="0" file="FMX.Types.pas" line="214"/>
    <field name="Files" type=":TDragObject.:1" visibility="public" size="4" offset="4" file="FMX.Types.pas" line="215"/>
    <field name="Data" type="TValue" visibility="public" size="24" offset="8" file="FMX.Types.pas" line="216"/>
  </struct>
  <type name="TFmxHandle" type="cardinal" loBound="0" hiBound="-1" file="System.pas" line="12"/>
  <type name="TFlasherInterval" type="shortint" loBound="-1" hiBound="1000" file="FMX.Types.pas" line="220"/>
  <const name="cIdNoTimer" type="NativeUInt" visibility="public" file="FMX.Types.pas" line="223"/>
  <type name="TCanActionExecEvent" file="FMX.Types.pas" line="226" procflags="closure">
  </type>
  <classref name="TFmxObjectClass" ref="TFmxObject" file="FMX.Types.pas" line="229"/>
  <class name="TWindowHandle" file="FMX.Types.pas" line="235">
    
    <members>
      <function name="GetScale" visibility="protected" procflags="virtual" file="FMX.Types.pas" line="238">
        <devnotes>
           <summary>Returns window scale factor.</summary>
        </devnotes>
        <parameters>
          <retval type="Single"/>
        </parameters>
      </function>
      <function name="IsScaleInteger" visibility="public" file="FMX.Types.pas" line="241">
        <devnotes>
           <summary>Returns True if Scale is integer value.</summary>
        </devnotes>
        <parameters>
          <retval type="Boolean"/>
        </parameters>
      </function>
      <property name="Scale" visibility="public" read="GetScale" type="Single" default="0" file="FMX.Types.pas" line="243">
        <devnotes>
           <summary>Window scale factor.</summary>
        </devnotes>
      </property>
    </members>
  </class>
  <interface name="IFreeNotification" GUID="{FEB50EAF-A3B9-4B37-8EDB-1EF9EE2F22D4}" ancestor="IInterface" file="FMX.Types.pas" line="246">
    <procedure name="FreeNotification" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="248">
      <parameters>
        <parameter name="AObject" type="TObject"/>
      </parameters>
    </procedure>
  </interface>
  <interface name="IFreeNotificationBehavior" GUID="{83F052C5-8696-4AFA-88F5-DCDFEF005480}" ancestor="IInterface" file="FMX.Types.pas" line="251">
    <procedure name="AddFreeNotify" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="253">
      <parameters>
        <parameter name="AObject" type="IFreeNotification" paramflags="const"/>
      </parameters>
    </procedure>
    <procedure name="RemoveFreeNotify" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="254">
      <parameters>
        <parameter name="AObject" type="IFreeNotification" paramflags="const"/>
      </parameters>
    </procedure>
  </interface>
  <interface name="ICaret" GUID="{F4EFFFB8-E83C-421D-B123-C370FB7BCCC7}" ancestor="IInterface" file="FMX.Types.pas" line="259">
    <function name="GetObject" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="261">
      <parameters>
        <retval type="TCustomCaret"/>
      </parameters>
    </function>
    <procedure name="ShowCaret" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="262">
    </procedure>
    <procedure name="HideCaret" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="263">
    </procedure>
  </interface>
  <interface name="IFlasher" GUID="{1A9163B4-47FD-45D6-A54F-70158CB01777}" ancestor="IInterface" file="FMX.Types.pas" line="266">
    <function name="GetColor" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="268">
      <parameters>
        <retval type="TAlphaColor"/>
      </parameters>
    </function>
    <function name="GetPos" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="269">
      <parameters>
        <retval type="TPointF"/>
      </parameters>
    </function>
    <function name="GetSize" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="270">
      <parameters>
        <retval type="TSizeF"/>
      </parameters>
    </function>
    <function name="GetVisible" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="271">
      <parameters>
        <retval type="Boolean"/>
      </parameters>
    </function>
    <function name="GetOpacity" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="272">
      <parameters>
        <retval type="Single"/>
      </parameters>
    </function>
    <function name="GetInterval" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="273">
      <parameters>
        <retval type="TFlasherInterval"/>
      </parameters>
    </function>
    <function name="GetCaret" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="274">
      <parameters>
        <retval type="TCustomCaret"/>
      </parameters>
    </function>
    <procedure name="SetCaret" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="275">
      <parameters>
        <parameter name="Value" type="TCustomCaret" paramflags="const"/>
      </parameters>
    </procedure>
    <property name="Color" visibility="public" read="GetColor" type="TAlphaColor" file="FMX.Types.pas" line="277"/>
    <property name="Pos" visibility="public" read="GetPos" type="TPointF" file="FMX.Types.pas" line="278"/>
    <property name="Size" visibility="public" read="GetSize" type="TSizeF" file="FMX.Types.pas" line="279"/>
    <property name="Visible" visibility="public" read="GetVisible" type="Boolean" file="FMX.Types.pas" line="280"/>
    <property name="Opacity" visibility="public" read="GetOpacity" type="Single" default="0" file="FMX.Types.pas" line="281"/>
    <property name="Interval" visibility="public" read="GetInterval" type="TFlasherInterval" file="FMX.Types.pas" line="282"/>
    <property name="Caret" visibility="public" read="GetCaret" write="SetCaret" type="TCustomCaret" file="FMX.Types.pas" line="283"/>
    <procedure name="UpdateState" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="284">
    </procedure>
  </interface>
  <interface name="IContainerObject" GUID="{DE635E60-CB00-4741-92BB-3B8F1F29A67C}" ancestor="IInterface" file="FMX.Types.pas" line="287">
    <function name="GetContainerWidth" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="289">
      <parameters>
        <retval type="Single"/>
      </parameters>
    </function>
    <function name="GetContainerHeight" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="290">
      <parameters>
        <retval type="Single"/>
      </parameters>
    </function>
    <property name="ContainerWidth" visibility="public" read="GetContainerWidth" type="Single" default="0" file="FMX.Types.pas" line="291"/>
    <property name="ContainerHeight" visibility="public" read="GetContainerHeight" type="Single" default="0" file="FMX.Types.pas" line="292"/>
  </interface>
  <interface name="IOriginalContainerSize" GUID="{E76F6097-AF5D-49A1-9C7B-5127D6068059}" ancestor="IInterface" file="FMX.Types.pas" line="295">
    <function name="GetOriginalContainerSize" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="297">
      <parameters>
        <retval type="TPointF"/>
      </parameters>
    </function>
    <property name="OriginalContainerSize" visibility="public" read="GetOriginalContainerSize" type="TPointF" file="FMX.Types.pas" line="298"/>
  </interface>
  <interface name="IObjectState" GUID="{0402E1A6-1F75-4D28-BFEA-8092803B00EE}" ancestor="IInterface" file="FMX.Types.pas" line="301">
    <function name="SaveState" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="303">
      <parameters>
        <retval type="Boolean"/>
      </parameters>
    </function>
    <function name="RestoreState" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="304">
      <parameters>
        <retval type="Boolean"/>
      </parameters>
    </function>
  </interface>
  <interface name="IContent" GUID="{96E89B94-2AD6-4AD3-A07C-92E66B2E6BC8}" ancestor="IInterface" file="FMX.Types.pas" line="307">
    <function name="GetParent" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="309">
      <parameters>
        <retval type="TFmxObject"/>
      </parameters>
    </function>
    <function name="GetObject" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="310">
      <parameters>
        <retval type="TFmxObject"/>
      </parameters>
    </function>
    <function name="GetChildrenCount" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="311">
      <parameters>
        <retval type="Integer"/>
      </parameters>
    </function>
    <property name="Parent" visibility="public" read="GetParent" type="TFmxObject" file="FMX.Types.pas" line="312"/>
    <property name="ChildrenCount" visibility="public" read="GetChildrenCount" type="Integer" file="FMX.Types.pas" line="313"/>
    <procedure name="Changed" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="314">
    </procedure>
  </interface>
  <interface name="IFMXCursorService" GUID="{5D359E54-2543-414E-8268-A53292E4FDB4}" ancestor="IInterface" file="FMX.Types.pas" line="317">
    <procedure name="SetCursor" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="319">
      <parameters>
        <parameter name="ACursor" type="TCursor" paramflags="const"/>
      </parameters>
    </procedure>
    <function name="GetCursor" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="320">
      <parameters>
        <retval type="TCursor"/>
      </parameters>
    </function>
  </interface>
  <interface name="IFMXMouseService" GUID="{2370205F-CF27-4DF6-9B1F-5EBC27271D5A}" ancestor="IInterface" file="FMX.Types.pas" line="323">
    <function name="GetMousePos" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="325">
      <parameters>
        <retval type="TPointF"/>
      </parameters>
    </function>
  </interface>
  <interface name="IControl" GUID="{7318D022-D048-49DE-BF55-C5C36A2AD1AC}" ancestor="IFreeNotificationBehavior" file="FMX.Types.pas" line="330">
    <function name="GetObject" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="332">
      <parameters>
        <retval type="TFmxObject"/>
      </parameters>
    </function>
    <procedure name="SetFocus" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="333">
    </procedure>
    <function name="GetIsFocused" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="334">
      <parameters>
        <retval type="Boolean"/>
      </parameters>
    </function>
    <function name="GetCanFocus" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="335">
      <parameters>
        <retval type="Boolean"/>
      </parameters>
    </function>
    <function name="GetCanParentFocus" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="336">
      <parameters>
        <retval type="Boolean"/>
      </parameters>
    </function>
    <function name="GetEnabled" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="337">
      <parameters>
        <retval type="Boolean"/>
      </parameters>
    </function>
    <function name="GetAbsoluteEnabled" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="338">
      <parameters>
        <retval type="Boolean"/>
      </parameters>
    </function>
    <function name="GetPopupMenu" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="339">
      <parameters>
        <retval type="TCustomPopupMenu"/>
      </parameters>
    </function>
    <function name="EnterChildren" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="340">
      <parameters>
        <parameter name="AObject" type="IControl"/>
        <retval type="Boolean"/>
      </parameters>
    </function>
    <function name="ExitChildren" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="341">
      <parameters>
        <parameter name="AObject" type="IControl"/>
        <retval type="Boolean"/>
      </parameters>
    </function>
    <procedure name="DoEnter" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="342">
    </procedure>
    <procedure name="DoExit" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="343">
    </procedure>
    <procedure name="DoActivate" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="344">
    </procedure>
    <procedure name="DoDeactivate" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="345">
    </procedure>
    <procedure name="DoMouseEnter" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="346">
    </procedure>
    <procedure name="DoMouseLeave" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="347">
    </procedure>
    <function name="ShowContextMenu" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="348">
      <parameters>
        <parameter name="ScreenPosition" type="TPointF" paramflags="const"/>
        <retval type="Boolean"/>
      </parameters>
    </function>
    <function name="ScreenToLocal" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="349">
      <parameters>
        <parameter name="AScreenPoint" type="TPointF" paramflags="const"/>
        <retval type="TPointF"/>
      </parameters>
    </function>
    <function name="LocalToScreen" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="350">
      <parameters>
        <parameter name="ALocalPoint" type="TPointF" paramflags="const"/>
        <retval type="TPointF"/>
      </parameters>
    </function>
    <function name="ObjectAtPoint" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="351">
      <parameters>
        <parameter name="AScreenPoint" type="TPointF"/>
        <retval type="IControl"/>
      </parameters>
    </function>
    <procedure name="MouseDown" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="352">
      <parameters>
        <parameter name="Button" type="TMouseButton"/>
        <parameter name="Shift" type="TShiftState"/>
        <parameter name="X" type="Single"/>
        <parameter name="Y" type="Single"/>
      </parameters>
    </procedure>
    <procedure name="MouseMove" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="353">
      <parameters>
        <parameter name="Shift" type="TShiftState"/>
        <parameter name="X" type="Single"/>
        <parameter name="Y" type="Single"/>
      </parameters>
    </procedure>
    <procedure name="MouseUp" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="354">
      <parameters>
        <parameter name="Button" type="TMouseButton"/>
        <parameter name="Shift" type="TShiftState"/>
        <parameter name="X" type="Single"/>
        <parameter name="Y" type="Single"/>
      </parameters>
    </procedure>
    <procedure name="MouseWheel" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="355">
      <parameters>
        <parameter name="Shift" type="TShiftState"/>
        <parameter name="WheelDelta" type="Integer"/>
        <parameter name="Handled" type="Boolean" paramflags="var"/>
      </parameters>
    </procedure>
    <procedure name="MouseClick" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="356">
      <parameters>
        <parameter name="Button" type="TMouseButton"/>
        <parameter name="Shift" type="TShiftState"/>
        <parameter name="X" type="Single"/>
        <parameter name="Y" type="Single"/>
      </parameters>
    </procedure>
    <procedure name="KeyDown" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="357">
      <parameters>
        <parameter name="Key" type="Word" paramflags="var"/>
        <parameter name="KeyChar" type="Char" paramflags="var"/>
        <parameter name="Shift" type="TShiftState"/>
      </parameters>
    </procedure>
    <procedure name="KeyUp" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="358">
      <parameters>
        <parameter name="Key" type="Word" paramflags="var"/>
        <parameter name="KeyChar" type="Char" paramflags="var"/>
        <parameter name="Shift" type="TShiftState"/>
      </parameters>
    </procedure>
    <procedure name="Tap" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="359">
      <parameters>
        <parameter name="Point" type="TPointF" paramflags="const"/>
      </parameters>
    </procedure>
    <procedure name="DialogKey" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="360">
      <parameters>
        <parameter name="Key" type="Word" paramflags="var"/>
        <parameter name="Shift" type="TShiftState"/>
      </parameters>
    </procedure>
    <procedure name="AfterDialogKey" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="361">
      <parameters>
        <parameter name="Key" type="Word" paramflags="var"/>
        <parameter name="Shift" type="TShiftState"/>
      </parameters>
    </procedure>
    <function name="FindTarget" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="362">
      <parameters>
        <parameter name="P" type="TPointF"/>
        <parameter name="Data" type="TDragObject" paramflags="const"/>
        <retval type="IControl"/>
      </parameters>
    </function>
    <procedure name="DragEnter" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="363">
      <parameters>
        <parameter name="Data" type="TDragObject" paramflags="const"/>
        <parameter name="Point" type="TPointF" paramflags="const"/>
      </parameters>
    </procedure>
    <procedure name="DragOver" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="364">
      <parameters>
        <parameter name="Data" type="TDragObject" paramflags="const"/>
        <parameter name="Point" type="TPointF" paramflags="const"/>
        <parameter name="Operation" type="TDragOperation" paramflags="var"/>
      </parameters>
    </procedure>
    <procedure name="DragDrop" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="365">
      <parameters>
        <parameter name="Data" type="TDragObject" paramflags="const"/>
        <parameter name="Point" type="TPointF" paramflags="const"/>
      </parameters>
    </procedure>
    <procedure name="DragLeave" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="366">
    </procedure>
    <procedure name="DragEnd" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="367">
    </procedure>
    <function name="CheckForAllowFocus" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="368">
      <parameters>
        <retval type="Boolean"/>
      </parameters>
    </function>
    <procedure name="Repaint" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="369">
    </procedure>
    <function name="GetDragMode" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="370">
      <parameters>
        <retval type="TDragMode"/>
      </parameters>
    </function>
    <procedure name="SetDragMode" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="371">
      <parameters>
        <parameter name="ADragMode" type="TDragMode" paramflags="const"/>
      </parameters>
    </procedure>
    <procedure name="BeginAutoDrag" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="372">
    </procedure>
    <function name="GetParent" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="373">
      <parameters>
        <retval type="TFmxObject"/>
      </parameters>
    </function>
    <function name="GetLocked" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="374">
      <parameters>
        <retval type="Boolean"/>
      </parameters>
    </function>
    <function name="GetVisible" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="375">
      <parameters>
        <retval type="Boolean"/>
      </parameters>
    </function>
    <procedure name="SetVisible" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="376">
      <parameters>
        <parameter name="Value" type="Boolean" paramflags="const"/>
      </parameters>
    </procedure>
    <function name="GetHitTest" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="377">
      <parameters>
        <retval type="Boolean"/>
      </parameters>
    </function>
    <function name="GetCursor" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="378">
      <parameters>
        <retval type="TCursor"/>
      </parameters>
    </function>
    <function name="GetInheritedCursor" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="379">
      <parameters>
        <retval type="TCursor"/>
      </parameters>
    </function>
    <function name="GetDesignInteractive" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="380">
      <parameters>
        <retval type="Boolean"/>
      </parameters>
    </function>
    <function name="GetAcceptsControls" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="381">
      <parameters>
        <retval type="Boolean"/>
      </parameters>
    </function>
    <procedure name="SetAcceptsControls" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="382">
      <parameters>
        <parameter name="Value" type="Boolean" paramflags="const"/>
      </parameters>
    </procedure>
    <procedure name="BeginUpdate" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="383">
    </procedure>
    <procedure name="EndUpdate" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="384">
    </procedure>
    <function name="GetTabStopController" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="385">
      <parameters>
        <retval type="ITabStopController"/>
      </parameters>
    </function>
    <function name="GetTabStop" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="386">
      <parameters>
        <retval type="Boolean"/>
      </parameters>
    </function>
    <procedure name="SetTabStop" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="387">
      <parameters>
        <parameter name="TabStop" type="Boolean" paramflags="const"/>
      </parameters>
    </procedure>
    <function name="HasHint" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="389">
      <devnotes>
         <summary>This method returns true if the control has an available hint to display.</summary>
      </devnotes>
      <parameters>
        <retval type="Boolean"/>
      </parameters>
    </function>
    <function name="GetHintString" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="392">
      <devnotes>
         <summary>If HasHint is true, this method is invoked in order to know if the control has an available
         string to swho as hint.</summary>
      </devnotes>
      <parameters>
        <retval type="string"/>
      </parameters>
    </function>
    <function name="GetHintObject" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="396">
      <devnotes>
         <summary>If HasHint is true, this method is invoked in order to know if the control has a custom hint
         object to manage the hint display. This usually returns an instance of THint to allow the form to manage
         it.</summary>
      </devnotes>
      <parameters>
        <retval type="TObject"/>
      </parameters>
    </function>
    <property name="AbsoluteEnabled" visibility="public" read="GetAbsoluteEnabled" type="Boolean" file="FMX.Types.pas" line="398"/>
    <property name="Cursor" visibility="public" read="GetCursor" type="TCursor" file="FMX.Types.pas" line="399"/>
    <property name="InheritedCursor" visibility="public" read="GetInheritedCursor" type="TCursor" file="FMX.Types.pas" line="400"/>
    <property name="DragMode" visibility="public" read="GetDragMode" write="SetDragMode" type="TDragMode" file="FMX.Types.pas" line="401"/>
    <property name="DesignInteractive" visibility="public" read="GetDesignInteractive" type="Boolean" file="FMX.Types.pas" line="402"/>
    <property name="Enabled" visibility="public" read="GetEnabled" type="Boolean" file="FMX.Types.pas" line="403"/>
    <property name="Parent" visibility="public" read="GetParent" type="TFmxObject" file="FMX.Types.pas" line="404"/>
    <property name="Locked" visibility="public" read="GetLocked" type="Boolean" file="FMX.Types.pas" line="405"/>
    <property name="HitTest" visibility="public" read="GetHitTest" type="Boolean" file="FMX.Types.pas" line="406"/>
    <property name="PopupMenu" visibility="public" read="GetPopupMenu" type="TCustomPopupMenu" file="FMX.Types.pas" line="407"/>
    <property name="Visible" visibility="public" read="GetVisible" write="SetVisible" type="Boolean" file="FMX.Types.pas" line="408"/>
    <property name="AcceptsControls" visibility="public" read="GetAcceptsControls" write="SetAcceptsControls" type="Boolean" file="FMX.Types.pas" line="409"/>
    <property name="IsFocused" visibility="public" read="GetIsFocused" type="Boolean" file="FMX.Types.pas" line="410"/>
    <property name="TabStop" visibility="public" read="GetTabStop" write="SetTabStop" type="Boolean" file="FMX.Types.pas" line="411"/>
  </interface>
  <interface name="IReadOnly" GUID="{495B8B0C-D7C8-4835-AA5F-580939D21444}" ancestor="IInterface" file="FMX.Types.pas" line="416">
    <devnotes>
       <summary> This interface is used to acces to property <b>ReadOnly</b> of all classes which supports this property
       </summary>
    </devnotes>
    <function name="GetReadOnly" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="418">
      <parameters>
        <retval type="Boolean"/>
      </parameters>
    </function>
    <procedure name="SetReadOnly" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="419">
      <parameters>
        <parameter name="Value" type="Boolean" paramflags="const"/>
      </parameters>
    </procedure>
    <property name="ReadOnly" visibility="public" read="GetReadOnly" write="SetReadOnly" type="Boolean" file="FMX.Types.pas" line="421">
      <devnotes>
         <summary> The property to which we have access </summary>
      </devnotes>
    </property>
  </interface>
  <interface name="IRoot" GUID="{7F7BB7B0-5932-49DD-9D35-712B2BA5D8EF}" ancestor="IInterface" file="FMX.Types.pas" line="424">
    <procedure name="AddObject" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="426">
      <parameters>
        <parameter name="AObject" type="TFmxObject" paramflags="const"/>
      </parameters>
    </procedure>
    <procedure name="InsertObject" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="427">
      <parameters>
        <parameter name="Index" type="Integer"/>
        <parameter name="AObject" type="TFmxObject" paramflags="const"/>
      </parameters>
    </procedure>
    <procedure name="RemoveObject" visibility="public" procflags="abstract overload virtual" file="FMX.Types.pas" line="428">
      <parameters>
        <parameter name="AObject" type="TFmxObject" paramflags="const"/>
      </parameters>
    </procedure>
    <procedure name="RemoveObject" visibility="public" procflags="abstract overload virtual" file="FMX.Types.pas" line="429">
      <parameters>
        <parameter name="Index" type="Integer"/>
      </parameters>
    </procedure>
    <procedure name="BeginInternalDrag" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="430">
      <parameters>
        <parameter name="Source" type="TObject" paramflags="const"/>
        <parameter name="ABitmap" type="TObject" paramflags="const"/>
      </parameters>
    </procedure>
    <function name="GetActiveControl" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="431">
      <parameters>
        <retval type="IControl"/>
      </parameters>
    </function>
    <procedure name="SetActiveControl" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="432">
      <parameters>
        <parameter name="AControl" type="IControl" paramflags="const"/>
      </parameters>
    </procedure>
    <function name="GetCaptured" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="433">
      <parameters>
        <retval type="IControl"/>
      </parameters>
    </function>
    <procedure name="SetCaptured" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="434">
      <parameters>
        <parameter name="Value" type="IControl" paramflags="const"/>
      </parameters>
    </procedure>
    <function name="GetFocused" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="435">
      <parameters>
        <retval type="IControl"/>
      </parameters>
    </function>
    <procedure name="SetFocused" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="436">
      <parameters>
        <parameter name="Value" type="IControl" paramflags="const"/>
      </parameters>
    </procedure>
    <function name="NewFocusedControl" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="437">
      <parameters>
        <parameter name="Value" type="IControl" paramflags="const"/>
        <retval type="IControl"/>
      </parameters>
    </function>
    <function name="GetHovered" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="438">
      <parameters>
        <retval type="IControl"/>
      </parameters>
    </function>
    <procedure name="SetHovered" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="439">
      <parameters>
        <parameter name="Value" type="IControl" paramflags="const"/>
      </parameters>
    </procedure>
    <function name="GetObject" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="440">
      <parameters>
        <retval type="TFmxObject"/>
      </parameters>
    </function>
    <function name="GetBiDiMode" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="441">
      <parameters>
        <retval type="TBiDiMode"/>
      </parameters>
    </function>
    <property name="Captured" visibility="public" read="GetCaptured" write="SetCaptured" type="IControl" file="FMX.Types.pas" line="443"/>
    <property name="Focused" visibility="public" read="GetFocused" write="SetFocused" type="IControl" file="FMX.Types.pas" line="444"/>
    <property name="Hovered" visibility="public" read="GetHovered" write="SetHovered" type="IControl" file="FMX.Types.pas" line="445"/>
    <property name="BiDiMode" visibility="public" read="GetBiDiMode" type="TBiDiMode" file="FMX.Types.pas" line="446"/>
  </interface>
  <interface name="IAlignRoot" GUID="{86DF30A6-0394-4A0E-8722-1F2CDB242CE8}" ancestor="IInterface" file="FMX.Types.pas" line="449">
    <procedure name="Realign" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="451">
    </procedure>
    <procedure name="ChildrenAlignChanged" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="452">
    </procedure>
  </interface>
  <interface name="INativeControl" GUID="{3E6F1A17-BAE3-456C-8551-5F6EA92EEE32}" ancestor="IInterface" file="FMX.Types.pas" line="455">
    <function name="GetHandle" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="457">
      <parameters>
        <retval type="NativeUInt"/>
      </parameters>
    </function>
    <procedure name="SetHandle" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="458">
      <parameters>
        <parameter name="Value" type="NativeUInt" paramflags="const"/>
      </parameters>
    </procedure>
    <function name="GetHandleSupported" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="459">
      <parameters>
        <retval type="Boolean"/>
      </parameters>
    </function>
    <property name="HandleSupported" visibility="public" read="GetHandleSupported" type="Boolean" file="FMX.Types.pas" line="460"/>
    <property name="Handle" visibility="public" read="GetHandle" write="SetHandle" type="NativeUInt" file="FMX.Types.pas" line="461"/>
  </interface>
  <interface name="IPaintControl" GUID="{47959F99-CCA5-4ACF-BB8D-357F126E9C78}" ancestor="IInterface" file="FMX.Types.pas" line="464">
    <procedure name="PaintRects" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="466">
      <parameters>
        <parameter name="UpdateRects" paramflags="const">
          <array name="UpdateRects">
            <element type="TRectF"/>
          </array>
        </parameter>
      </parameters>
    </procedure>
    <procedure name="SetContextHandle" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="467">
      <parameters>
        <parameter name="AContextHandle" type="NativeUInt" paramflags="const"/>
      </parameters>
    </procedure>
    <function name="GetContextHandle" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="468">
      <parameters>
        <retval type="NativeUInt"/>
      </parameters>
    </function>
    <property name="ContextHandle" visibility="public" read="GetContextHandle" write="SetContextHandle" type="NativeUInt" file="FMX.Types.pas" line="469"/>
  </interface>
  <enum name="TVirtualKeyboardType" file="FMX.Types.pas" line="472">
    <element value="0" name="Default" file="FMX.Types.pas" line="472"/>
    <element value="1" name="NumbersAndPunctuation" file="FMX.Types.pas" line="472"/>
    <element value="2" name="NumberPad" file="FMX.Types.pas" line="472"/>
    <element value="3" name="PhonePad" file="FMX.Types.pas" line="472"/>
    <element value="4" name="Alphabet" file="FMX.Types.pas" line="472"/>
    <element value="5" name="URL" file="FMX.Types.pas" line="472"/>
    <element value="6" name="NamePhonePad" file="FMX.Types.pas" line="472"/>
    <element value="7" name="EmailAddress" file="FMX.Types.pas" line="473"/>
    <element value="8" name="DecimalNumberPad" file="FMX.Types.pas" line="473"/>
  </enum>
  <enum name="TVirtualKeyboardState" file="FMX.Types.pas" line="475">
    <element value="0" name="AutoShow" file="FMX.Types.pas" line="475"/>
    <element value="1" name="Visible" file="FMX.Types.pas" line="475"/>
    <element value="2" name="Error" file="FMX.Types.pas" line="475"/>
    <element value="3" name="Transient" file="FMX.Types.pas" line="475"/>
  </enum>
  <set name="TVirtualKeyboardStates" type="TVirtualKeyboardState" file="FMX.Types.pas" line="477">
    <element name="AutoShow"/>
    <element name="Visible"/>
    <element name="Error"/>
    <element name="Transient"/>
  </set>
  <enum name="TReturnKeyType" file="FMX.Types.pas" line="479">
    <element value="0" name="Default" file="FMX.Types.pas" line="479"/>
    <element value="1" name="Done" file="FMX.Types.pas" line="479"/>
    <element value="2" name="Go" file="FMX.Types.pas" line="479"/>
    <element value="3" name="Next" file="FMX.Types.pas" line="479"/>
    <element value="4" name="Search" file="FMX.Types.pas" line="479"/>
    <element value="5" name="Send" file="FMX.Types.pas" line="479"/>
  </enum>
  <interface name="IVirtualKeyboardControl" GUID="{41127080-97FC-4C30-A880-AB6CD351A6C4}" ancestor="IInterface" file="FMX.Types.pas" line="481">
    <procedure name="SetKeyboardType" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="483">
      <parameters>
        <parameter name="Value" type="TVirtualKeyboardType"/>
      </parameters>
    </procedure>
    <function name="GetKeyboardType" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="484">
      <parameters>
        <retval type="TVirtualKeyboardType"/>
      </parameters>
    </function>
    <property name="KeyboardType" visibility="public" read="GetKeyboardType" write="SetKeyboardType" type="TVirtualKeyboardType" file="FMX.Types.pas" line="485"/>
    <procedure name="SetReturnKeyType" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="487">
      <parameters>
        <parameter name="Value" type="TReturnKeyType"/>
      </parameters>
    </procedure>
    <function name="GetReturnKeyType" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="488">
      <parameters>
        <retval type="TReturnKeyType"/>
      </parameters>
    </function>
    <property name="ReturnKeyType" visibility="public" read="GetReturnKeyType" write="SetReturnKeyType" type="TReturnKeyType" file="FMX.Types.pas" line="489"/>
    <function name="IsPassword" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="491">
      <parameters>
        <retval type="Boolean"/>
      </parameters>
    </function>
  </interface>
  <enum name="TAdjustType" file="FMX.Types.pas" line="494">
    <element value="0" name="None" file="FMX.Types.pas" line="494"/>
    <element value="1" name="FixedSize" file="FMX.Types.pas" line="494"/>
    <element value="2" name="FixedWidth" file="FMX.Types.pas" line="494"/>
    <element value="3" name="FixedHeight" file="FMX.Types.pas" line="494"/>
  </enum>
  <interface name="IAlignableObject" GUID="{420D3E98-4433-4CBE-9767-0B494DF08354}" ancestor="IInterface" file="FMX.Types.pas" line="496">
    <function name="GetAlign" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="498">
      <parameters>
        <retval type="TAlignLayout"/>
      </parameters>
    </function>
    <procedure name="SetAlign" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="499">
      <parameters>
        <parameter name="Value" type="TAlignLayout" paramflags="const"/>
      </parameters>
    </procedure>
    <function name="GetAnchors" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="500">
      <parameters>
        <retval type="TAnchors"/>
      </parameters>
    </function>
    <procedure name="SetAnchors" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="501">
      <parameters>
        <parameter name="Value" type="TAnchors" paramflags="const"/>
      </parameters>
    </procedure>
    <function name="GetMargins" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="502">
      <parameters>
        <retval type="TBounds"/>
      </parameters>
    </function>
    <procedure name="SetBounds" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="503">
      <parameters>
        <parameter name="X" type="Single"/>
        <parameter name="Y" type="Single"/>
        <parameter name="AWidth" type="Single"/>
        <parameter name="AHeight" type="Single"/>
      </parameters>
    </procedure>
    <function name="GetPadding" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="504">
      <parameters>
        <retval type="TBounds"/>
      </parameters>
    </function>
    <function name="GetWidth" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="505">
      <parameters>
        <retval type="Single"/>
      </parameters>
    </function>
    <function name="GetHeight" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="506">
      <parameters>
        <retval type="Single"/>
      </parameters>
    </function>
    <function name="GetLeft" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="507">
      <parameters>
        <retval type="Single"/>
      </parameters>
    </function>
    <function name="GetTop" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="508">
      <parameters>
        <retval type="Single"/>
      </parameters>
    </function>
    <function name="GetAllowAlign" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="509">
      <parameters>
        <retval type="Boolean"/>
      </parameters>
    </function>
    <function name="GetAnchorRules" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="511">
      <parameters>
        <retval type="TPointF"/>
      </parameters>
    </function>
    <function name="GetAnchorOrigin" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="512">
      <parameters>
        <retval type="TPointF"/>
      </parameters>
    </function>
    <function name="GetOriginalParentSize" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="513">
      <parameters>
        <retval type="TPointF"/>
      </parameters>
    </function>
    <function name="GetAnchorMove" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="514">
      <parameters>
        <retval type="Boolean"/>
      </parameters>
    </function>
    <procedure name="SetAnchorMove" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="515">
      <parameters>
        <parameter name="Value" type="Boolean"/>
      </parameters>
    </procedure>
    <function name="GetAdjustType" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="517">
      <parameters>
        <retval type="TAdjustType"/>
      </parameters>
    </function>
    <function name="GetAdjustSizeValue" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="518">
      <parameters>
        <retval type="TSizeF"/>
      </parameters>
    </function>
    <property name="Align" visibility="public" read="GetAlign" write="SetAlign" type="TAlignLayout" file="FMX.Types.pas" line="520"/>
    <property name="AllowAlign" visibility="public" read="GetAllowAlign" type="Boolean" file="FMX.Types.pas" line="521"/>
    <property name="Anchors" visibility="public" read="GetAnchors" write="SetAnchors" type="TAnchors" file="FMX.Types.pas" line="522"/>
    <property name="Margins" visibility="public" read="GetMargins" type="TBounds" file="FMX.Types.pas" line="523"/>
    <property name="Padding" visibility="public" read="GetPadding" type="TBounds" file="FMX.Types.pas" line="524"/>
    <property name="Left" visibility="public" read="GetLeft" type="Single" default="0" file="FMX.Types.pas" line="525"/>
    <property name="Height" visibility="public" read="GetHeight" type="Single" default="0" file="FMX.Types.pas" line="526"/>
    <property name="Width" visibility="public" read="GetWidth" type="Single" default="0" file="FMX.Types.pas" line="527"/>
    <property name="Top" visibility="public" read="GetTop" type="Single" default="0" file="FMX.Types.pas" line="528"/>
    <property name="AnchorRules" visibility="public" read="GetAnchorRules" type="TPointF" file="FMX.Types.pas" line="530"/>
    <property name="AnchorOrigin" visibility="public" read="GetAnchorOrigin" type="TPointF" file="FMX.Types.pas" line="531"/>
    <property name="OriginalParentSize" visibility="public" read="GetOriginalParentSize" type="TPointF" file="FMX.Types.pas" line="532"/>
    <property name="AnchorMove" visibility="public" read="GetAnchorMove" write="SetAnchorMove" type="Boolean" file="FMX.Types.pas" line="533"/>
    <property name="AdjustType" visibility="public" read="GetAdjustType" type="TAdjustType" file="FMX.Types.pas" line="535"/>
    <property name="AdjustSizeValue" visibility="public" read="GetAdjustSizeValue" type="TSizeF" file="FMX.Types.pas" line="536"/>
  </interface>
  <interface name="IItemsContainer" GUID="{100B2F87-5DCB-4699-B751-B4439588E82A}" ancestor="IInterface" file="FMX.Types.pas" line="539">
    <function name="GetItemsCount" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="541">
      <parameters>
        <retval type="Integer"/>
      </parameters>
    </function>
    <function name="GetItem" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="542">
      <parameters>
        <parameter name="AIndex" type="Integer" paramflags="const"/>
        <retval type="TFmxObject"/>
      </parameters>
    </function>
    <function name="GetObject" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="543">
      <parameters>
        <retval type="TFmxObject"/>
      </parameters>
    </function>
  </interface>
  <interface name="ITabList" GUID="{80C67BA2-3064-4D90-A8E1-B00028CA670E}" ancestor="IInterface" file="FMX.Types.pas" line="546">
    <procedure name="Add" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="548">
      <parameters>
        <parameter name="TabStop" type="IControl" paramflags="const"/>
      </parameters>
    </procedure>
    <procedure name="Remove" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="549">
      <parameters>
        <parameter name="TabStop" type="IControl" paramflags="const"/>
      </parameters>
    </procedure>
    <procedure name="Update" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="550">
      <parameters>
        <parameter name="TabStop" type="IControl" paramflags="const"/>
        <parameter name="NewValue" type="TTabOrder" paramflags="const"/>
      </parameters>
    </procedure>
    <function name="GetTabOrder" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="551">
      <parameters>
        <parameter name="TabStop" type="IControl" paramflags="const"/>
        <retval type="TTabOrder"/>
      </parameters>
    </function>
    <function name="GetCount" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="552">
      <parameters>
        <retval type="Integer"/>
      </parameters>
    </function>
    <function name="GetItem" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="553">
      <parameters>
        <parameter name="Index" type="Integer" paramflags="const"/>
        <retval type="IControl"/>
      </parameters>
    </function>
    <function name="FindNextTabStop" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="554">
      <parameters>
        <parameter name="Current" type="IControl" paramflags="const"/>
        <parameter name="MoveForward" type="Boolean" paramflags="const"/>
        <parameter name="Climb" type="Boolean" paramflags="const"/>
        <retval type="IControl"/>
      </parameters>
    </function>
    <property name="Count" visibility="public" read="GetCount" type="Integer" file="FMX.Types.pas" line="555"/>
  </interface>
  <interface name="ITabStopController" GUID="{E7D2E0C5-EA3B-40BD-B728-5E4BB264EFC1}" ancestor="IInterface" file="FMX.Types.pas" line="558">
    <function name="GetTabList" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="560">
      <parameters>
        <retval type="ITabList"/>
      </parameters>
    </function>
    <property name="TabList" visibility="public" read="GetTabList" type="ITabList" file="FMX.Types.pas" line="561"/>
  </interface>
  <struct name="TTangentPair" size="8" file="FMX.Types.pas" line="564">
    <field name="I" type="Single" visibility="public" size="4" offset="0" file="FMX.Types.pas" line="565"/>
    <field name="Ip1" type="Single" visibility="public" size="4" offset="4" file="FMX.Types.pas" line="566"/>
  </struct>
  <class name="TSpline" file="FMX.Types.pas" line="569">
    
    <members>
      <field name="FTangentsX" type=":TSpline.:1" visibility="private" size="4" offset="4" file="FMX.Types.pas" line="571"/>
      <field name="FTangentsY" type=":TSpline.:1" visibility="private" size="4" offset="8" file="FMX.Types.pas" line="571"/>
      <field name="FValuesX" type=":TSpline.:2" visibility="private" size="4" offset="12" file="FMX.Types.pas" line="572"/>
      <field name="FValuesY" type=":TSpline.:2" visibility="private" size="4" offset="16" file="FMX.Types.pas" line="572"/>
      <constructor name="Create" visibility="public" file="FMX.Types.pas" line="574">
        <parameters>
          <parameter name="Polygon" type="TPolygon" paramflags="const"/>
        </parameters>
      </constructor>
      <destructor name="Destroy" visibility="public" file="FMX.Types.pas" line="575">
        <parameters>
        </parameters>
      </destructor>
      <procedure name="SplineXY" visibility="public" file="FMX.Types.pas" line="576">
        <parameters>
          <parameter name="t" type="Single" paramflags="const"/>
          <parameter name="X" type="Single" paramflags="var"/>
          <parameter name="Y" type="Single" paramflags="var"/>
        </parameters>
      </procedure>
    </members>
  </class>
  <type name="TDragEnterEvent" file="FMX.Types.pas" line="579" procflags="closure">
  </type>
  <type name="TDragOverEvent" file="FMX.Types.pas" line="580" procflags="closure">
  </type>
  <type name="TDragDropEvent" file="FMX.Types.pas" line="582" procflags="closure">
  </type>
  <type name="TCanFocusEvent" file="FMX.Types.pas" line="583" procflags="closure">
  </type>
  <pointer name="PDeviceDisplayMetrics" type="TDeviceDisplayMetrics" indircnt="1" file="FMX.Types.pas" line="585"/>
  <struct name="TDeviceDisplayMetrics" size="40" file="FMX.Types.pas" line="586">
    <field name="PhysicalScreenSize" type="TSize" visibility="public" size="8" offset="0" file="FMX.Types.pas" line="587"/>
    <field name="LogicalScreenSize" type="TSize" visibility="public" size="8" offset="8" file="FMX.Types.pas" line="588"/>
    <field name="RawScreenSize" type="TSize" visibility="public" size="8" offset="16" file="FMX.Types.pas" line="591">
      <devnotes>
         <summary>When available, complete screen area in pixels, including status bars and button bars. Can be
         the same as PhysicalScreenSize.</summary>
      </devnotes>
    </field>
    <field name="AspectRatio" type="Single" visibility="public" size="4" offset="24" file="FMX.Types.pas" line="592"/>
    <field name="PixelsPerInch" type="Integer" visibility="public" size="4" offset="28" file="FMX.Types.pas" line="593"/>
    <field name="ScreenScale" type="Single" visibility="public" size="4" offset="32" file="FMX.Types.pas" line="594"/>
    <field name="FontScale" type="Single" visibility="public" size="4" offset="36" file="FMX.Types.pas" line="595"/>
    <constructor name="Create" visibility="public" file="FMX.Types.pas" line="597">
      <parameters>
        <parameter name="APhysicalScreenSize" type="TSize" paramflags="const"/>
        <parameter name="ALogicalScreenSize" type="TSize" paramflags="const"/>
        <parameter name="AAspectRatio" type="Single" paramflags="const"/>
        <parameter name="APixelsPerInch" type="Integer" paramflags="const"/>
        <parameter name="AScreenScale" type="Single" paramflags="const"/>
        <parameter name="AFontScale" type="Single" paramflags="const"/>
      </parameters>
    </constructor>
    <function name="operator Equality" visibility="public" procflags="class noself operator overload" file="FMX.Types.pas" line="600" generated="true">
      <parameters>
        <parameter name="Left" type="TDeviceDisplayMetrics" paramflags="const"/>
        <parameter name="Right" type="TDeviceDisplayMetrics" paramflags="const"/>
        <retval type="Boolean"/>
      </parameters>
    </function>
    <function name="operator Inequality" visibility="public" procflags="class noself operator overload inline" file="FMX.Types.pas" line="601" generated="true">
      <parameters>
        <parameter name="Left" type="TDeviceDisplayMetrics" paramflags="const"/>
        <parameter name="Right" type="TDeviceDisplayMetrics" paramflags="const"/>
        <retval type="Boolean"/>
      </parameters>
    </function>
    <function name="Default" visibility="public" procflags="static" file="FMX.Types.pas" line="603">
      <parameters>
        <retval type="TDeviceDisplayMetrics"/>
      </parameters>
    </function>
  </struct>
  <class name="TBounds" file="FMX.Types.pas" line="608">
    
    <members>
      <field name="FRight" type="Single" visibility="private" size="4" offset="4" file="FMX.Types.pas" line="610"/>
      <field name="FBottom" type="Single" visibility="private" size="4" offset="8" file="FMX.Types.pas" line="611"/>
      <field name="FTop" type="Single" visibility="private" size="4" offset="12" file="FMX.Types.pas" line="612"/>
      <field name="FLeft" type="Single" visibility="private" size="4" offset="16" file="FMX.Types.pas" line="613"/>
      <field name="FOnChange" type="TNotifyEvent" visibility="private" size="8" offset="24" file="FMX.Types.pas" line="614"/>
      <field name="FDefaultValue" type="TRectF" visibility="private" size="16" offset="32" file="FMX.Types.pas" line="615"/>
      <function name="GetRect" visibility="private" file="FMX.Types.pas" line="616">
        <parameters>
          <retval type="TRectF"/>
        </parameters>
      </function>
      <procedure name="SetRect" visibility="private" file="FMX.Types.pas" line="617">
        <parameters>
          <parameter name="Value" type="TRectF" paramflags="const"/>
        </parameters>
      </procedure>
      <procedure name="SetBottom" visibility="private" file="FMX.Types.pas" line="618">
        <parameters>
          <parameter name="Value" type="Single" paramflags="const"/>
        </parameters>
      </procedure>
      <procedure name="SetLeft" visibility="private" file="FMX.Types.pas" line="619">
        <parameters>
          <parameter name="Value" type="Single" paramflags="const"/>
        </parameters>
      </procedure>
      <procedure name="SetRight" visibility="private" file="FMX.Types.pas" line="620">
        <parameters>
          <parameter name="Value" type="Single" paramflags="const"/>
        </parameters>
      </procedure>
      <procedure name="SetTop" visibility="private" file="FMX.Types.pas" line="621">
        <parameters>
          <parameter name="Value" type="Single" paramflags="const"/>
        </parameters>
      </procedure>
      <function name="IsBottomStored" visibility="private" file="FMX.Types.pas" line="622">
        <parameters>
          <retval type="Boolean"/>
        </parameters>
      </function>
      <function name="IsLeftStored" visibility="private" file="FMX.Types.pas" line="623">
        <parameters>
          <retval type="Boolean"/>
        </parameters>
      </function>
      <function name="IsRightStored" visibility="private" file="FMX.Types.pas" line="624">
        <parameters>
          <retval type="Boolean"/>
        </parameters>
      </function>
      <function name="IsTopStored" visibility="private" file="FMX.Types.pas" line="625">
        <parameters>
          <retval type="Boolean"/>
        </parameters>
      </function>
      <procedure name="ReadLeftInt" visibility="private" file="FMX.Types.pas" line="626">
        <parameters>
          <parameter name="Reader" type="TReader"/>
        </parameters>
      </procedure>
      <procedure name="ReadBottomInt" visibility="private" file="FMX.Types.pas" line="627">
        <parameters>
          <parameter name="Reader" type="TReader"/>
        </parameters>
      </procedure>
      <procedure name="ReadRightInt" visibility="private" file="FMX.Types.pas" line="628">
        <parameters>
          <parameter name="Reader" type="TReader"/>
        </parameters>
      </procedure>
      <procedure name="ReadTopInt" visibility="private" file="FMX.Types.pas" line="629">
        <parameters>
          <parameter name="Reader" type="TReader"/>
        </parameters>
      </procedure>
      <procedure name="ReadRectInt" visibility="private" file="FMX.Types.pas" line="630">
        <parameters>
          <parameter name="Reader" type="TReader"/>
        </parameters>
      </procedure>
      <procedure name="ReadRect" visibility="private" file="FMX.Types.pas" line="631">
        <parameters>
          <parameter name="Reader" type="TReader"/>
        </parameters>
      </procedure>
      <procedure name="DefineProperties" visibility="protected" procflags="override" file="FMX.Types.pas" line="633">
        <parameters>
          <parameter name="Filer" type="TFiler"/>
        </parameters>
      <devnotes><summary>
Reads and writes otherwise unpublished data the same as a property.
</summary></devnotes></procedure>
      <procedure name="DoChange" visibility="protected" procflags="virtual" file="FMX.Types.pas" line="634">
      <devnotes><summary>
Embarcadero Technologies does not currently have any additional information.


</summary></devnotes></procedure>
      <constructor name="Create" visibility="public" file="FMX.Types.pas" line="636">
        <parameters>
          <parameter name="ADefaultValue" type="TRectF" paramflags="const"/>
        </parameters>
      <devnotes><summary>
Constructs a TBounds object and initializes its data before the object is first used. 
</summary></devnotes></constructor>
      <procedure name="Assign" visibility="public" procflags="override" file="FMX.Types.pas" line="637">
        <parameters>
          <parameter name="Source" type="TPersistent"/>
        </parameters>
      <devnotes><summary>
Copies the contents of another similar object to the current instance.
</summary></devnotes></procedure>
      <function name="Equals" visibility="public" procflags="override" file="FMX.Types.pas" line="638">
        <parameters>
          <parameter name="Obj" type="TObject"/>
          <retval type="Boolean"/>
        </parameters>
      <devnotes><summary>
Checks whether the current instance and the Obj parameter are equal.
FMX.Types.TBounds.Equals inherits from System.TObject.Equals. All content below this line refers to System.TObject.Equals.
Checks whether the current instance and the Obj parameter are equal.
The function has one Obj parameter of the TObject type.
By default, the Equals method shows whether the addresses corresponding to the current object and the Obj object are identical. The method returns a boolean value that represents the equality between the two addresses. 


Note: Equals is supposed to be overridden in user-derived classes, to provide consumer objects with an equality determining function. 
For example, in the FMX.Types.TBounds class, Equals also returns True if the Rect properties of the current object and of the Obj object are equal. In the FMX.StdActns.TBaseValueRange class, Equals also returns True if all the properties of the current object and of the Obj object are equal. 

</summary></devnotes></function>
      <function name="PaddingRect" visibility="public" file="FMX.Types.pas" line="639">
        <parameters>
          <parameter name="R" type="TRectF" paramflags="const"/>
          <retval type="TRectF"/>
        </parameters>
      <devnotes><summary>
Returns a rectangle defined by the current Rect property and the R parameter.
The PaddingRect function returns a rectangle calculated by adding the Left and Top values and subtracting the Right and Bottom values of the current Rect to or from the corresponding values of the specified R rectangle.
For example, if the current Rect is (10, 20, 50, 30) and R is (20, 10, 40, 50), the result of PaddingRect is (30, 30, -10, 20). See also Padding.
</summary></devnotes></function>
      <function name="MarginRect" visibility="public" file="FMX.Types.pas" line="640">
        <parameters>
          <parameter name="R" type="TRectF" paramflags="const"/>
          <retval type="TRectF"/>
        </parameters>
      <devnotes><summary>
Returns a rectangle defined by the current Rect property and the R parameter.
The MarginRect function returns a rectangle calculated by adding the Left and Top values and subtracting the Right and Bottom values of the current Rect to or from the corresponding values of the R rectangle.
For example, if the current Rect is (10, 20, 50, 30) and R is (20, 10, 40, 50), the result of MarginRect is (30, 30, -10, 20). See also Margins.
</summary></devnotes></function>
      <function name="Width" visibility="public" file="FMX.Types.pas" line="641">
        <parameters>
          <retval type="Single"/>
        </parameters>
      <devnotes><summary>
Returns the width of the Rect, as the difference between the Right and Left values.
</summary></devnotes></function>
      <function name="Height" visibility="public" file="FMX.Types.pas" line="642">
        <parameters>
          <retval type="Single"/>
        </parameters>
      <devnotes><summary>
Returns the height of the Rect, as the difference between the Bottom and Top values.
</summary></devnotes></function>
      <property name="Rect" visibility="public" read="GetRect" write="SetRect" type="TRectF" file="FMX.Types.pas" line="643"><devnotes><summary>
Specifies the bounds as a rectangle.
Use the Rect property to set and get the margins.
</summary></devnotes></property>
      <property name="DefaultValue" visibility="public" read="FDefaultValue" write="FDefaultValue" type="TRectF" file="FMX.Types.pas" line="644"><devnotes><summary>
Specifies the default value for the margins.
DefaultValue is automatically set when creating the TBounds instance.
</summary></devnotes></property>
      <event name="OnChange" visibility="public" read="FOnChange" write="FOnChange" type="TNotifyEvent" file="FMX.Types.pas" line="645"/>
      <function name="Empty" visibility="public" file="FMX.Types.pas" line="646">
        <parameters>
          <retval type="Boolean"/>
        </parameters>
      <devnotes><summary>
Returns True if either the Width or Height of the Rect are empty, and False otherwise.
</summary></devnotes></function>
      <function name="MarginEmpty" visibility="public" file="FMX.Types.pas" line="647">
        <parameters>
          <retval type="Boolean"/>
        </parameters>
      <devnotes><summary>
Returns True when the Left, Right, Top, and Bottom properties are simultaneously 0.
</summary></devnotes></function>
      <function name="ToString" visibility="public" procflags="override" file="FMX.Types.pas" line="648">
        <parameters>
          <retval type="string"/>
        </parameters>
      <devnotes><summary>
Returns a string containing the class name.
FMX.Types.TBounds.ToString inherits from System.TObject.ToString. All content below this line refers to System.TObject.ToString.
Returns a string containing the class name.
By default, the ToString returns a string containing the class name of the instance that is being called. 
For example, calling ToString on a TButton instance returns a string containing &quot;TButton&quot;. 

Note: ToString is intended to be overridden in user-derived classes, to provide consumer objects with a string representation. </summary></devnotes></function>
      <property name="Left" visibility="published" read="FLeft" write="SetLeft" stored="IsLeftStored" type="Single" file="FMX.Types.pas" line="650"><devnotes><summary>
Specifies the left edge of the margin.
Use the Left property to set and get the left edge of the margin.
</summary></devnotes></property>
      <property name="Top" visibility="published" read="FTop" write="SetTop" stored="IsTopStored" type="Single" file="FMX.Types.pas" line="651"><devnotes><summary>
Specifies the top edge of the margin.
Use the Top property to set and get the top edge of the margin.
</summary></devnotes></property>
      <property name="Right" visibility="published" read="FRight" write="SetRight" stored="IsRightStored" type="Single" file="FMX.Types.pas" line="652"><devnotes><summary>
Specifies the right edge of the margin.
Use the Right property to set and get the right edge of the margin.
</summary></devnotes></property>
      <property name="Bottom" visibility="published" read="FBottom" write="SetBottom" stored="IsBottomStored" type="Single" file="FMX.Types.pas" line="653"><devnotes><summary>
Specifies the bottom edge of the margin.
Use the Bottom property to set and get the bottom edge of the margin.
</summary></devnotes></property>
    </members>
  <devnotes><summary>
Specifies the bounds for a control.
TBounds is used in the Margins and Padding properties of TControl and its descendants. TBounds help define the relative position between components on a form, and between the edges of the form and the component. For example, when you set the left bound for a component to 10 pixels, the component will not come closer than 10 pixels to the edge of the container, or to another component on the left edge. The number of pixels by which two components are separated is the sum of the pixels of both components.
You can define the amount of margin that should surround the component on the Top, Left, Bottom, or Right by changing the pixel value for the Margins and Padding  properties in the Object Inspector.
Margins and Padding depend on the Align property. To see the effect, set the Margins property on a parent control and set the Align property for the child control to vaClient.
</summary></devnotes></class>
  <class name="TPosition" file="FMX.Types.pas" line="658">
    
    <members>
      <field name="FOnChange" type="TNotifyEvent" visibility="private" size="8" offset="8" file="FMX.Types.pas" line="660"/>
      <field name="FY" type="Single" visibility="private" size="4" offset="16" file="FMX.Types.pas" line="661"/>
      <field name="FX" type="Single" visibility="private" size="4" offset="20" file="FMX.Types.pas" line="662"/>
      <field name="FDefaultValue" type="TPointF" visibility="private" size="8" offset="24" file="FMX.Types.pas" line="663"/>
      <field name="FStoreAsInt" type="Boolean" visibility="private" size="1" offset="32" file="FMX.Types.pas" line="664"/>
      <procedure name="SetPoint" visibility="private" file="FMX.Types.pas" line="665">
        <parameters>
          <parameter name="Value" type="TPointF" paramflags="const"/>
        </parameters>
      </procedure>
      <procedure name="SetX" visibility="private" file="FMX.Types.pas" line="666">
        <parameters>
          <parameter name="Value" type="Single" paramflags="const"/>
        </parameters>
      </procedure>
      <procedure name="SetY" visibility="private" file="FMX.Types.pas" line="667">
        <parameters>
          <parameter name="Value" type="Single" paramflags="const"/>
        </parameters>
      </procedure>
      <function name="GetPoint" visibility="private" file="FMX.Types.pas" line="668">
        <parameters>
          <retval type="TPointF"/>
        </parameters>
      </function>
      <function name="IsXStored" visibility="private" file="FMX.Types.pas" line="669">
        <parameters>
          <retval type="Boolean"/>
        </parameters>
      </function>
      <function name="IsYStored" visibility="private" file="FMX.Types.pas" line="670">
        <parameters>
          <retval type="Boolean"/>
        </parameters>
      </function>
      <procedure name="ReadXInt" visibility="private" file="FMX.Types.pas" line="671">
        <parameters>
          <parameter name="Reader" type="TReader"/>
        </parameters>
      </procedure>
      <procedure name="WriteXInt" visibility="private" file="FMX.Types.pas" line="672">
        <parameters>
          <parameter name="Writer" type="TWriter"/>
        </parameters>
      </procedure>
      <procedure name="ReadYInt" visibility="private" file="FMX.Types.pas" line="673">
        <parameters>
          <parameter name="Reader" type="TReader"/>
        </parameters>
      </procedure>
      <procedure name="WriteYInt" visibility="private" file="FMX.Types.pas" line="674">
        <parameters>
          <parameter name="Writer" type="TWriter"/>
        </parameters>
      </procedure>
      <procedure name="DefineProperties" visibility="protected" procflags="override" file="FMX.Types.pas" line="676">
        <parameters>
          <parameter name="Filer" type="TFiler"/>
        </parameters>
      <devnotes><summary>
Provides methods to read and write unpublished data.
DefineProperties is implemented so that the position is written as a single string in the .fmx, not as separate X and Y values.
DefineProperties uses the methods of the filer passed as the Filer parameter to assign methods that can load and save the Point property.
Override DefineProperties to persist unpublished properties. Call the DefineBinaryProperty or DefineProperty method of the Filer parameter to assign methods that load or save property values.

Note: When overriding this method, call the parent class' DefineProperties method first.</summary></devnotes></procedure>
      <procedure name="ReadPoint" visibility="protected" file="FMX.Types.pas" line="677">
        <parameters>
          <parameter name="Reader" type="TReader"/>
        </parameters>
      <devnotes><summary>
Reads the coordinates of a point from the given Reader.
ReadPoint transforms the string data from the TReader given as a parameter into TPointF properties and assigns them to the Point property.
</summary></devnotes></procedure>
      <procedure name="WritePoint" visibility="protected" file="FMX.Types.pas" line="678">
        <parameters>
          <parameter name="Writer" type="TWriter"/>
        </parameters>
      <devnotes><summary>
Writes the properties of the current Point into the given TWriter object.
WritePoint transforms the properties of Point into a string and writes the result in the TWriter given as a parameter.
</summary></devnotes></procedure>
      <procedure name="DoChange" visibility="protected" procflags="virtual" file="FMX.Types.pas" line="679">
      <devnotes><summary>
Embarcadero Technologies does not currently have any additional information.


</summary></devnotes></procedure>
      <constructor name="Create" visibility="public" file="FMX.Types.pas" line="681">
        <parameters>
          <parameter name="ADefaultValue" type="TPointF" paramflags="const"/>
        </parameters>
      <devnotes><summary>
Creates and initializes a TPosition instance.
Create generates a new TPosition instance. Create requires a default TPointF value as a DefaultValue for the position. The DefaultValue is usually (0,0), but can have other values also. If the position is the same as the default value, it is not stored in the .fmx file.
</summary></devnotes></constructor>
      <procedure name="Assign" visibility="public" procflags="override" file="FMX.Types.pas" line="682">
        <parameters>
          <parameter name="Source" type="TPersistent"/>
        </parameters>
      <devnotes><summary>
Copies the contents of another similar object to the current one.
Assign copies the properties from another TPosition instance.
</summary></devnotes></procedure>
      <procedure name="SetPointNoChange" visibility="public" file="FMX.Types.pas" line="683">
        <parameters>
          <parameter name="P" type="TPointF" paramflags="const"/>
        </parameters>
      <devnotes><summary>
Embarcadero Technologies does not currently have any additional information.


</summary></devnotes></procedure>
      <function name="Empty" visibility="public" file="FMX.Types.pas" line="684">
        <parameters>
          <retval type="Boolean"/>
        </parameters>
      <devnotes><summary>
Returns True if the components are the default ones, False otherwise.
Empty returns True if the X and Y coordinates are both the same as described by the DefaultValue property, False otherwise.
</summary></devnotes></function>
      <procedure name="Reflect" visibility="public" file="FMX.Types.pas" line="685">
        <parameters>
          <parameter name="Normal" type="TPointF" paramflags="const"/>
        </parameters>
      <devnotes><summary>
Returns the reflection of the current vector across a specified line.
Use the Reflect function to obtain the reflection of the current position across the perpendicular on the point given as parameter.

</summary></devnotes></procedure>
      <property name="Point" visibility="public" read="GetPoint" write="SetPoint" type="TPointF" file="FMX.Types.pas" line="686"><devnotes><summary>
Specifies the coordinates of the current object as a point.
Use the Point property to specify the coordinates of a TPosition object as a point.
</summary></devnotes></property>
      <property name="StoreAsInt" visibility="public" read="FStoreAsInt" write="FStoreAsInt" type="Boolean" file="FMX.Types.pas" line="687"><devnotes><summary>
Embarcadero Technologies does not currently have any additional information.


</summary></devnotes></property>
      <property name="DefaultValue" visibility="public" read="FDefaultValue" write="FDefaultValue" type="TPointF" file="FMX.Types.pas" line="688"><devnotes><summary>
Specifies the default coordinates of the current object.
Use the DefaultValue property to receive the default coordinates of a TPosition object.
</summary></devnotes></property>
      <event name="OnChange" visibility="public" read="FOnChange" write="FOnChange" type="TNotifyEvent" file="FMX.Types.pas" line="689"/>
      <property name="X" visibility="published" read="FX" write="SetX" stored="IsXStored" type="Single" file="FMX.Types.pas" line="691"><devnotes><summary>
Specifies the horizontal coordinate of the object.
Use the X property to receive or to set the horizontal coordinate of the current TPosition object.
</summary></devnotes></property>
      <property name="Y" visibility="published" read="FY" write="SetY" stored="IsYStored" type="Single" file="FMX.Types.pas" line="692"><devnotes><summary>
Specifies the vertical coordinate of the object.
Use the Y property to receive or to set the vertical coordinate of the current TPosition object.
</summary></devnotes></property>
    </members>
  <devnotes><summary>
Used for specifying a control's position inside a form.
A TPosition object is used for representing the position of a control inside its parent, or anywhere related X and Y values are needed. The position can be specified through the X and Y values, as a Point.
</summary></devnotes></class>
  <class name="TControlSize" file="FMX.Types.pas" line="695">
    
    <members>
      <field name="FUsePlatformDefault" type="Boolean" visibility="private" size="1" offset="4" file="FMX.Types.pas" line="697"/>
      <field name="FSize" type="TSizeF" visibility="private" size="8" offset="8" file="FMX.Types.pas" line="698"/>
      <field name="FDefaultValue" type="TSizeF" visibility="private" size="8" offset="16" file="FMX.Types.pas" line="699"/>
      <field name="FOnChange" type="TNotifyEvent" visibility="private" size="8" offset="24" file="FMX.Types.pas" line="700"/>
      <procedure name="SetWidth" visibility="private" file="FMX.Types.pas" line="701">
        <parameters>
          <parameter name="AValue" type="Single" paramflags="const"/>
        </parameters>
      </procedure>
      <procedure name="SetHeight" visibility="private" file="FMX.Types.pas" line="702">
        <parameters>
          <parameter name="AValue" type="Single" paramflags="const"/>
        </parameters>
      </procedure>
      <function name="GetWidth" visibility="private" file="FMX.Types.pas" line="703">
        <parameters>
          <retval type="Single"/>
        </parameters>
      </function>
      <function name="GetHeight" visibility="private" file="FMX.Types.pas" line="704">
        <parameters>
          <retval type="Single"/>
        </parameters>
      </function>
      <function name="StoreWidthHeight" visibility="private" file="FMX.Types.pas" line="705">
        <parameters>
          <retval type="Boolean"/>
        </parameters>
      </function>
      <procedure name="SetUsePlatformDefault" visibility="private" file="FMX.Types.pas" line="706">
        <parameters>
          <parameter name="Value" type="Boolean" paramflags="const"/>
        </parameters>
      </procedure>
      <function name="GetSize" visibility="private" file="FMX.Types.pas" line="707">
        <parameters>
          <retval type="TSizeF"/>
        </parameters>
      </function>
      <procedure name="SetSize" visibility="private" file="FMX.Types.pas" line="708">
        <parameters>
          <parameter name="Value" type="TSizeF" paramflags="const"/>
        </parameters>
      </procedure>
      <procedure name="DoChange" visibility="protected" procflags="virtual" file="FMX.Types.pas" line="710">
      <devnotes><summary>
Dispatcher of the OnChange event.
</summary></devnotes></procedure>
      <constructor name="Create" visibility="public" file="FMX.Types.pas" line="712">
        <parameters>
          <parameter name="ASize" type="TSizeF" paramflags="const"/>
        </parameters>
      <devnotes><summary>
Creates an instance of TControlSize.
</summary></devnotes></constructor>
      <procedure name="Assign" visibility="public" procflags="override" file="FMX.Types.pas" line="713">
        <parameters>
          <parameter name="Source" type="TPersistent"/>
        </parameters>
      <devnotes><summary>
Copies the contents of another similar object.
FMX.Types.TControlSize.Assign inherits from System.Classes.TPersistent.Assign. All content below this line refers to System.Classes.TPersistent.Assign.
Copies the contents of another similar object.
Assign copies properties and other attributes of the specified Source object to the current object. The standard form of a call to Assign is:

Destination.Assign(Source); {Delphi}

Destination-&gt;Assign(Source); // C++

which tells the current object to copy the contents of the Source object to itself.
Most objects override Assign to handle the assignment of properties from similar objects. When overriding Assign, call the inherited method if the destination object cannot handle the assignment of properties from the class of the Source parameter.
If no overridden Assign method can handle the assignment of properties from Source, the method implemented in TPersistent calls the source object's AssignTo method. This allows the source object to handle the assignment. If the Source object is nil (Delphi) or NULL (C++), Assign raises an EConvertError exception.
In general, the statement

Destination := Source; {Delphi}

Destination = Source; // C++

is not the same as the statement

Destination.Assign(Source); {Delphi}

Destination-&gt;Assign(Source); // C++

The assignment operator makes Destination reference the same object as Source, whereas the Assign method copies the contents of the object referenced by Source into the object referenced by Destination.

Note: The types of some properties are also objects. If these properties have written methods that use Assign to set the value of the property, then in these cases the assignment operator does the same thing as the Assign method.</summary></devnotes></procedure>
      <procedure name="SetPlatformDefaultWithoutNotification" visibility="public" procflags="inline" file="FMX.Types.pas" line="714">
        <parameters>
          <parameter name="Value" type="Boolean" paramflags="const"/>
        </parameters>
      <devnotes><summary>
Sets the value of the PlatformDefault property without triggering the OnChange notification. This method should be used only in cases where the OnChange notification is triggered by some other mechanism.
</summary></devnotes></procedure>
      <procedure name="SetSizeWithoutNotification" visibility="public" file="FMX.Types.pas" line="715">
        <parameters>
          <parameter name="Value" type="TSizeF" paramflags="const"/>
        </parameters>
      <devnotes><summary>
Sets the Size property to the height and width values of TSizeF and the PlatformDefault property to False. 
These changes do not cause any notification. You can change instead the Size and PlatformDefault properties directly, what calls the OnChange event.
This method should be used only in cases where the OnChange notification is triggered by some other mechanism.
</summary></devnotes></procedure>
      <property name="DefaultValue" visibility="public" read="FDefaultValue" write="FDefaultValue" type="TSizeF" file="FMX.Types.pas" line="716"><devnotes><summary>
Represents the default values of the TControlSize Height, Width, and PlatformDefault variables.
</summary></devnotes></property>
      <property name="Size" visibility="public" read="GetSize" write="SetSize" type="TSizeF" file="FMX.Types.pas" line="717"><devnotes><summary>
Sets or gets the width and height of a control as a &lt;TSizeF&gt; record.
Using this method to set the Width and Height allows both dimensions to be updated while triggering only one OnChange notification. 

Note: Setting this property will set PlatformDefault to False.</summary></devnotes></property>
      <event name="OnChange" visibility="public" read="FOnChange" write="FOnChange" type="TNotifyEvent" file="FMX.Types.pas" line="718"/>
      <property name="Width" visibility="published" read="GetWidth" write="SetWidth" stored="StoreWidthHeight" type="Single" file="FMX.Types.pas" line="720"><devnotes><summary>
Describes the width of a TControlSize.
Use this property to set or get the width for a TControlSize.
</summary></devnotes></property>
      <property name="Height" visibility="published" read="GetHeight" write="SetHeight" stored="StoreWidthHeight" type="Single" file="FMX.Types.pas" line="721"><devnotes><summary>
Describes the height of a TControlSize.
Use this property to set or get the height for a TControlSize.
</summary></devnotes></property>
      <property name="PlatformDefault" visibility="published" read="FUsePlatformDefault" write="SetUsePlatformDefault" type="Boolean" default="1" file="FMX.Types.pas" line="722"><devnotes><summary>
When this property is set to True, the size and width of the control are set automatically based on pre-defined sizes for the active platform.
Explicitly setting the Width or Height properties  automatically sets the PlatformDefault setting to False.

Note: Changing the value of PlatformDefault  triggers an OnChange notification.</summary></devnotes></property>
    </members>
  <devnotes><summary>
Used for storing the size of FireMonkey components.
A TControlSize object is used for managing the size of the component. This can be specified through the Size, Width, Height, and PlatformDefault attributes.
</summary></devnotes></class>
  <interface name="IRotatedControl" GUID="{9EACF441-30E1-467D-88DA-CC8B2977758F}" ancestor="IInterface" file="FMX.Types.pas" line="725">
    <function name="GetRotationAngle" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="727">
      <parameters>
        <retval type="Single"/>
      </parameters>
    </function>
    <function name="GetRotationCenter" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="728">
      <parameters>
        <retval type="TPosition"/>
      </parameters>
    </function>
    <function name="GetScale" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="729">
      <parameters>
        <retval type="TPosition"/>
      </parameters>
    </function>
    <procedure name="SetRotationAngle" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="730">
      <parameters>
        <parameter name="Value" type="Single" paramflags="const"/>
      </parameters>
    </procedure>
    <procedure name="SetRotationCenter" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="731">
      <parameters>
        <parameter name="Value" type="TPosition" paramflags="const"/>
      </parameters>
    </procedure>
    <procedure name="SetScale" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="732">
      <parameters>
        <parameter name="Value" type="TPosition" paramflags="const"/>
      </parameters>
    </procedure>
    <property name="RotationAngle" visibility="public" read="GetRotationAngle" write="SetRotationAngle" type="Single" default="0" file="FMX.Types.pas" line="733"/>
    <property name="RotationCenter" visibility="public" read="GetRotationCenter" write="SetRotationCenter" type="TPosition" file="FMX.Types.pas" line="734"/>
    <property name="Scale" visibility="public" read="GetScale" write="SetScale" type="TPosition" file="FMX.Types.pas" line="735"/>
  </interface>
  <type name="TCaretDisplayChanged" file="FMX.Types.pas" line="738" procflags="closure">
  </type>
  <classref name="TCaretClass" ref="TCustomCaret" file="FMX.Types.pas" line="740"/>
  <class name="TCustomCaret" file="FMX.Types.pas" line="742">
    
    <members>
      <field name="FOwner" type="TFmxObject" visibility="private" size="4" offset="4" file="FMX.Types.pas" line="744">
        <attributes>
          <attribute name="TObject"/>
        </attributes>
      </field>
      <field name="FIControl" type="IControl" visibility="private" size="4" offset="8" file="FMX.Types.pas" line="745"/>
      <field name="FVisible" type="Boolean" visibility="private" size="1" offset="12" file="FMX.Types.pas" line="746"/>
      <field name="FDisplayed" type="Boolean" visibility="private" size="1" offset="13" file="FMX.Types.pas" line="747"/>
      <field name="FTemporarilyHidden" type="Boolean" visibility="private" size="1" offset="14" file="FMX.Types.pas" line="748"/>
      <field name="FChanged" type="Boolean" visibility="private" size="1" offset="15" file="FMX.Types.pas" line="749"/>
      <field name="FUpdateCount" type="Integer" visibility="private" size="4" offset="16" file="FMX.Types.pas" line="750"/>
      <field name="FOnDisplayChanged" type="TCaretDisplayChanged" visibility="private" size="8" offset="24" file="FMX.Types.pas" line="751"/>
      <field name="FColor" type="TAlphaColor" visibility="private" size="4" offset="32" file="FMX.Types.pas" line="752"/>
      <field name="FDefaultColor" type="TAlphaColor" visibility="private" size="4" offset="36" file="FMX.Types.pas" line="753"/>
      <field name="FPos" type="TPointF" visibility="private" size="8" offset="40" file="FMX.Types.pas" line="754"/>
      <field name="FSize" type="TSizeF" visibility="private" size="8" offset="48" file="FMX.Types.pas" line="755"/>
      <field name="FInterval" type="TFlasherInterval" visibility="private" size="2" offset="56" file="FMX.Types.pas" line="756"/>
      <field name="FReadOnly" type="Boolean" visibility="private" size="1" offset="58" file="FMX.Types.pas" line="757"/>
      <procedure name="SetColor" visibility="private" file="FMX.Types.pas" line="758">
        <parameters>
          <parameter name="Value" type="TAlphaColor" paramflags="const"/>
        </parameters>
      </procedure>
      <procedure name="SetPos" visibility="private" file="FMX.Types.pas" line="759">
        <parameters>
          <parameter name="Value" type="TPointF" paramflags="const"/>
        </parameters>
      </procedure>
      <procedure name="SetSize" visibility="private" file="FMX.Types.pas" line="760">
        <parameters>
          <parameter name="Value" type="TSizeF" paramflags="const"/>
        </parameters>
      </procedure>
      <procedure name="SetTemporarilyHidden" visibility="private" file="FMX.Types.pas" line="761">
        <parameters>
          <parameter name="Value" type="Boolean" paramflags="const"/>
        </parameters>
      </procedure>
      <procedure name="SetVisible" visibility="private" file="FMX.Types.pas" line="762">
        <parameters>
          <parameter name="Value" type="Boolean" paramflags="const"/>
        </parameters>
      </procedure>
      <procedure name="SetInterval" visibility="private" file="FMX.Types.pas" line="763">
        <parameters>
          <parameter name="Value" type="TFlasherInterval" paramflags="const"/>
        </parameters>
      </procedure>
      <procedure name="SetReadOnly" visibility="private" file="FMX.Types.pas" line="764">
        <parameters>
          <parameter name="Value" type="Boolean" paramflags="const"/>
        </parameters>
      </procedure>
      <procedure name="StartTimer" visibility="private" file="FMX.Types.pas" line="765">
      </procedure>
      <function name="GetWidth" visibility="private" file="FMX.Types.pas" line="766">
        <parameters>
          <retval type="Word"/>
        </parameters>
      </function>
      <procedure name="SetWidth" visibility="private" file="FMX.Types.pas" line="767">
        <parameters>
          <parameter name="Value" type="Word" paramflags="const"/>
        </parameters>
      </procedure>
      <function name="GetFlasher" visibility="private" file="FMX.Types.pas" line="768">
        <parameters>
          <retval type="IFlasher"/>
        </parameters>
      </function>
      <procedure name="SetDefaultColor" visibility="private" file="FMX.Types.pas" line="769">
        <parameters>
          <parameter name="Value" type="TAlphaColor" paramflags="const"/>
        </parameters>
      </procedure>
      <function name="GetOwner" visibility="protected" procflags="override" file="FMX.Types.pas" line="771">
        <parameters>
          <retval type="TPersistent"/>
        </parameters>
      </function>
      <procedure name="DoDisplayChanged" visibility="protected" procflags="virtual" file="FMX.Types.pas" line="772">
        <parameters>
          <parameter name="VirtualKeyboardState" type="TVirtualKeyboardStates" paramflags="const"/>
        </parameters>
      </procedure>
      <procedure name="DoUpdateFlasher" visibility="protected" procflags="virtual" file="FMX.Types.pas" line="773">
      </procedure>
      <constructor name="Create" visibility="public" file="FMX.Types.pas" line="775">
        <parameters>
          <parameter name="AOwner" type="TFmxObject" paramflags="const"/>
        </parameters>
      </constructor>
      <destructor name="Destroy" visibility="public" file="FMX.Types.pas" line="776">
        <parameters>
        </parameters>
      </destructor>
      <procedure name="Assign" visibility="public" procflags="override" file="FMX.Types.pas" line="777">
        <parameters>
          <parameter name="Source" type="TPersistent"/>
        </parameters>
      </procedure>
      <procedure name="Hide" visibility="public" procflags="virtual" file="FMX.Types.pas" line="781">
        <devnotes>
           <summary>
             hide the caret
           </summary>
        </devnotes>
      </procedure>
      <procedure name="Show" visibility="public" procflags="virtual" file="FMX.Types.pas" line="785">
        <devnotes>
           <summary>
             if possible (CanShow = True and Visible = True), the caret show.
           </summary>
        </devnotes>
      </procedure>
      <property name="Pos" visibility="public" read="FPos" write="SetPos" type="TPointF" file="FMX.Types.pas" line="789">
        <devnotes>
           <summary>
             This method is performed after changing the Displayed
           </summary>
        </devnotes>
      </property>
      <property name="Size" visibility="public" read="FSize" write="SetSize" type="TSizeF" file="FMX.Types.pas" line="790"/>
      <property name="Color" visibility="public" read="FColor" write="SetColor" type="TAlphaColor" default="0" file="FMX.Types.pas" line="791"/>
      <property name="DefaultColor" visibility="public" read="FDefaultColor" write="SetDefaultColor" type="TAlphaColor" file="FMX.Types.pas" line="792"/>
      <property name="Interval" visibility="public" read="FInterval" write="SetInterval" type="TFlasherInterval" default="0" file="FMX.Types.pas" line="793"/>
      <property name="Owner" visibility="public" read="FOwner" type="TFmxObject" file="FMX.Types.pas" line="794"/>
      <property name="Control" visibility="public" read="FIControl" type="IControl" file="FMX.Types.pas" line="795"/>
      <procedure name="BeginUpdate" visibility="public" file="FMX.Types.pas" line="796">
      </procedure>
      <procedure name="EndUpdate" visibility="public" file="FMX.Types.pas" line="797">
      </procedure>
      <function name="FlasherName" visibility="public" procflags="class abstract virtual" file="FMX.Types.pas" line="798">
        <parameters>
          <retval type="string"/>
        </parameters>
      </function>
      <property name="UpdateCount" visibility="public" read="FUpdateCount" type="Integer" file="FMX.Types.pas" line="799"/>
      <procedure name="UpdateFlasher" visibility="public" file="FMX.Types.pas" line="803">
        <devnotes>
           <summary>
             The update of the &quot;Flasher&quot;, if UpdateCount = 0.
           </summary>
        </devnotes>
      </procedure>
      <property name="Visible" visibility="public" read="FVisible" write="SetVisible" type="Boolean" file="FMX.Types.pas" line="807">
        <devnotes>
           <summary>
             This property controls the visibility of a caret, for the control in which the input focus.
           </summary>
        </devnotes>
      </property>
      <function name="CanShow" visibility="public" procflags="virtual" file="FMX.Types.pas" line="812">
        <devnotes>
           <summary>
             The function returns true, if the control is visible, enabled,
             has the input focus and it in an active form
           </summary>
        </devnotes>
        <parameters>
          <retval type="Boolean"/>
        </parameters>
      </function>
      <property name="Displayed" visibility="public" read="FDisplayed" type="Boolean" file="FMX.Types.pas" line="817">
        <devnotes>
           <summary>
             This property is set to True, after the successful execution of
             method Show, and is set to False after method Hide
           </summary>
        </devnotes>
      </property>
      <property name="TemporarilyHidden" visibility="public" read="FTemporarilyHidden" write="SetTemporarilyHidden" type="Boolean" file="FMX.Types.pas" line="823">
        <devnotes>
           <summary>
             If this property is 'true', the blinking control is invisible
             and does not take values of Visible, Displayed.
             When you change the properties, methods DoShow, DoHide, DoDisplayChanged not met.
           </summary>
        </devnotes>
      </property>
      <property name="Flasher" visibility="public" read="GetFlasher" type="IFlasher" file="FMX.Types.pas" line="828">
        <devnotes>
           <summary>
             Blinking visual component is displayed.
             Usually this line, having a thickness of one or two pixels.
           </summary>
        </devnotes>
      </property>
      <property name="ReadOnly" visibility="public" read="FReadOnly" write="SetReadOnly" type="Boolean" file="FMX.Types.pas" line="829"/>
      <property name="Width" visibility="public" read="GetWidth" write="SetWidth" type="Word" default="0" file="FMX.Types.pas" line="830"/>
      <event name="OnDisplayChanged" visibility="public" read="FOnDisplayChanged" write="FOnDisplayChanged" type="TCaretDisplayChanged" file="FMX.Types.pas" line="832"/>
    </members>
  </class>
  <class name="TTransform" file="FMX.Types.pas" line="837">
    
    <members>
      <field name="FMatrix" type="TMatrix" visibility="private" size="36" offset="4" file="FMX.Types.pas" line="839"/>
      <field name="FRotationAngle" type="Single" visibility="private" size="4" offset="40" file="FMX.Types.pas" line="840"/>
      <field name="FPosition" type="TPosition" visibility="private" size="4" offset="44" file="FMX.Types.pas" line="841"/>
      <field name="FScale" type="TPosition" visibility="private" size="4" offset="48" file="FMX.Types.pas" line="842"/>
      <field name="FSkew" type="TPosition" visibility="private" size="4" offset="52" file="FMX.Types.pas" line="843"/>
      <field name="FRotationCenter" type="TPosition" visibility="private" size="4" offset="56" file="FMX.Types.pas" line="844"/>
      <field name="FOnChanged" type="TNotifyEvent" visibility="private" size="8" offset="64" file="FMX.Types.pas" line="845"/>
      <procedure name="SetRotationAngle" visibility="private" file="FMX.Types.pas" line="846">
        <parameters>
          <parameter name="Value" type="Single" paramflags="const"/>
        </parameters>
      </procedure>
      <procedure name="SetScale" visibility="private" file="FMX.Types.pas" line="847">
        <parameters>
          <parameter name="Value" type="TPosition" paramflags="const"/>
        </parameters>
      </procedure>
      <procedure name="SetPosition" visibility="private" file="FMX.Types.pas" line="848">
        <parameters>
          <parameter name="Value" type="TPosition" paramflags="const"/>
        </parameters>
      </procedure>
      <procedure name="MatrixChanged" visibility="protected" file="FMX.Types.pas" line="850">
        <parameters>
          <parameter name="Sender" type="TObject"/>
        </parameters>
      </procedure>
      <property name="Skew" visibility="protected" read="FSkew" write="FSkew" type="TPosition" file="FMX.Types.pas" line="851"/>
      <constructor name="Create" visibility="public" file="FMX.Types.pas" line="853">
        <parameters>
        </parameters>
      </constructor>
      <destructor name="Destroy" visibility="public" file="FMX.Types.pas" line="854">
        <parameters>
        </parameters>
      </destructor>
      <procedure name="Assign" visibility="public" procflags="override" file="FMX.Types.pas" line="855">
        <parameters>
          <parameter name="Source" type="TPersistent"/>
        </parameters>
      </procedure>
      <property name="Matrix" visibility="public" read="FMatrix" type="TMatrix" file="FMX.Types.pas" line="856"/>
      <event name="OnChanged" visibility="public" read="FOnChanged" write="FOnChanged" type="TNotifyEvent" file="FMX.Types.pas" line="857"/>
      <property name="Position" visibility="published" read="FPosition" write="SetPosition" type="TPosition" file="FMX.Types.pas" line="859"/>
      <property name="Scale" visibility="published" read="FScale" write="SetScale" type="TPosition" file="FMX.Types.pas" line="860"/>
      <property name="RotationAngle" visibility="published" read="FRotationAngle" write="SetRotationAngle" type="Single" default="0" file="FMX.Types.pas" line="861"/>
      <property name="RotationCenter" visibility="published" read="FRotationCenter" write="FRotationCenter" type="TPosition" file="FMX.Types.pas" line="862"/>
    </members>
  </class>
  <type name="TTrigger" type="UnicodeString" file="FMX.Types.pas" line="865"/>
  <enum name="TAnimationType" file="FMX.Types.pas" line="867">
    <element value="0" name="In" file="FMX.Types.pas" line="867"/>
    <element value="1" name="Out" file="FMX.Types.pas" line="867"/>
    <element value="2" name="InOut" file="FMX.Types.pas" line="867"/>
  </enum>
  <enum name="TInterpolationType" file="FMX.Types.pas" line="869">
    <element value="0" name="Linear" file="FMX.Types.pas" line="869"/>
    <element value="1" name="Quadratic" file="FMX.Types.pas" line="869"/>
    <element value="2" name="Cubic" file="FMX.Types.pas" line="869"/>
    <element value="3" name="Quartic" file="FMX.Types.pas" line="869"/>
    <element value="4" name="Quintic" file="FMX.Types.pas" line="869"/>
    <element value="5" name="Sinusoidal" file="FMX.Types.pas" line="869"/>
    <element value="6" name="Exponential" file="FMX.Types.pas" line="869"/>
    <element value="7" name="Circular" file="FMX.Types.pas" line="869"/>
    <element value="8" name="Elastic" file="FMX.Types.pas" line="869"/>
    <element value="9" name="Back" file="FMX.Types.pas" line="869"/>
    <element value="10" name="Bounce" file="FMX.Types.pas" line="869"/>
  </enum>
  <type name="TMouseEvent" file="FMX.Types.pas" line="871" procflags="closure">
  </type>
  <type name="TMouseMoveEvent" file="FMX.Types.pas" line="872" procflags="closure">
  </type>
  <type name="TMouseWheelEvent" file="FMX.Types.pas" line="873" procflags="closure">
  </type>
  <type name="TKeyEvent" file="FMX.Types.pas" line="874" procflags="closure">
  </type>
  <type name="TProcessTickEvent" file="FMX.Types.pas" line="875" procflags="closure">
  </type>
  <type name="TVirtualKeyboardEvent" file="FMX.Types.pas" line="876" procflags="closure">
  </type>
  <type name="TTapEvent" file="FMX.Types.pas" line="877" procflags="closure">
  </type>
  <type name="TTouchEvent" file="FMX.Types.pas" line="878" procflags="closure">
  </type>
  <anonMethod name="TFmxObjectSortCompare" file="FMX.Types.pas" line="880">
    <function name="Invoke" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="880">
      <parameters>
        <parameter name="Left" type="TFmxObject"/>
        <parameter name="Right" type="TFmxObject"/>
        <retval type="Integer"/>
      </parameters>
    </function>
  </anonMethod>
  <class name="TFmxChildrenList" file="FMX.Types.pas" line="884">
    
    <members>
      <field name="FChildren" type="TFmxObjectList" visibility="class private" size="4" offset="4" file="FMX.Types.pas" line="886">
        <attributes>
          <attribute name="TObject"/>
        </attributes>
      </field>
      <function name="DoGetEnumerator" visibility="protected" procflags="override" file="FMX.Types.pas" line="888">
        <parameters>
          <retval type="TEnumerator&lt;FMX.Types.TFmxObject&gt;"/>
        </parameters>
      </function>
      <function name="GetChildCount" visibility="protected" procflags="virtual" file="FMX.Types.pas" line="889">
        <parameters>
          <retval type="Integer"/>
        </parameters>
      </function>
      <function name="GetChild" visibility="protected" procflags="virtual" file="FMX.Types.pas" line="890">
        <parameters>
          <parameter name="AIndex" type="Integer"/>
          <retval type="TFmxObject"/>
        </parameters>
      </function>
      <constructor name="Create" visibility="public" file="FMX.Types.pas" line="892">
        <parameters>
          <parameter name="AChildren" type="TFmxObjectList" paramflags="const"/>
        </parameters>
      </constructor>
      <destructor name="Destroy" visibility="public" file="FMX.Types.pas" line="893">
        <parameters>
        </parameters>
      </destructor>
      <property name="Count" visibility="public" read="GetChildCount" type="Integer" file="FMX.Types.pas" line="894"/>
      <function name="IndexOf" visibility="public" procflags="virtual" file="FMX.Types.pas" line="895">
        <parameters>
          <parameter name="Obj" type="TFmxObject" paramflags="const"/>
          <retval type="Integer"/>
        </parameters>
      </function>
      <property name="Items[Index]" visibility="public" read="GetChild" type="TFmxObject" file="FMX.Types.pas" line="896"/>
    </members>
  </class>
  <enum name="TEnumProcResult" file="FMX.Types.pas" line="901">
    <element value="0" name="Continue" file="FMX.Types.pas" line="901"/>
    <element value="1" name="Discard" file="FMX.Types.pas" line="901"/>
    <element value="2" name="Stop" file="FMX.Types.pas" line="901"/>
  </enum>
  <class name="TStyleIndexer" file="FMX.Types.pas" line="904">
    
    <ancestor name="TObject" namespace="System">
      <methodref name="Create" visibility="public" procflags="constructor">
      </methodref>
      <methodref name="Free" visibility="public">
      </methodref>
      <methodref name="DisposeOf" visibility="public" procflags="inline">
      </methodref>
      <methodref name="InitInstance" visibility="public" procflags="class">
      </methodref>
      <methodref name="CleanupInstance" visibility="public">
      </methodref>
      <methodref name="ClassType" visibility="public" procflags="inline">
      </methodref>
      <methodref name="ClassName" visibility="public" procflags="class">
      </methodref>
      <methodref name="ClassNameIs" visibility="public" procflags="class">
      </methodref>
      <methodref name="ClassParent" visibility="public" procflags="class inline">
      </methodref>
      <methodref name="ClassInfo" visibility="public" procflags="class inline">
      </methodref>
      <methodref name="InstanceSize" visibility="public" procflags="class inline">
      </methodref>
      <methodref name="InheritsFrom" visibility="public" procflags="class">
      </methodref>
      <methodref name="MethodAddress" visibility="public" procflags="class overload">
      </methodref>
      <methodref name="MethodAddress" visibility="public" procflags="class overload">
      </methodref>
      <methodref name="MethodName" visibility="public" procflags="class">
      </methodref>
      <methodref name="QualifiedClassName" visibility="public" procflags="class">
      </methodref>
      <methodref name="FieldAddress" visibility="public" procflags="overload">
      </methodref>
      <methodref name="FieldAddress" visibility="public" procflags="overload">
      </methodref>
      <methodref name="GetInterface" visibility="public">
      </methodref>
      <methodref name="GetInterfaceEntry" visibility="public" procflags="class">
      </methodref>
      <methodref name="GetInterfaceTable" visibility="public" procflags="class inline">
      </methodref>
      <methodref name="UnitName" visibility="public" procflags="class">
      </methodref>
      <methodref name="UnitScope" visibility="public" procflags="class">
      </methodref>
      <methodref name="Equals" visibility="public" procflags="virtual">
      </methodref>
      <methodref name="GetHashCode" visibility="public" procflags="virtual">
      </methodref>
      <methodref name="ToString" visibility="public" procflags="virtual">
      </methodref>
      <methodref name="SafeCallException" visibility="public" procflags="virtual">
      </methodref>
      <methodref name="AfterConstruction" visibility="public" procflags="virtual">
      </methodref>
      <methodref name="BeforeDestruction" visibility="public" procflags="virtual">
      </methodref>
      <methodref name="Dispatch" visibility="public" procflags="virtual">
      </methodref>
      <methodref name="DefaultHandler" visibility="public" procflags="virtual">
      </methodref>
      <methodref name="NewInstance" visibility="public" procflags="class virtual">
      </methodref>
      <methodref name="FreeInstance" visibility="public" procflags="virtual">
      </methodref>
      <methodref name="Destroy" visibility="public" procflags="destructor virtual">
      </methodref>
      <methodref name="GetDisposed" visibility="protected" procflags="inline">
      </methodref>
      <methodref name="CheckDisposed" visibility="protected" procflags="inline">
      </methodref>
      <propertyref name="Disposed" visibility="protected">
      </propertyref>
    </ancestor>
    <members>
      <field name="FStyle" type="TFmxObject" visibility="private" size="4" offset="4" file="FMX.Types.pas" line="906">
        <attributes>
          <attribute name="TObject"/>
        </attributes>
      </field>
      <field name="FIndex" type="TDictionary&lt;System.string,FMX.Types.TFmxObject&gt;" visibility="private" size="4" offset="8" file="FMX.Types.pas" line="907"/>
      <procedure name="Rebuild" visibility="private" file="FMX.Types.pas" line="908">
      </procedure>
      <constructor name="Create" visibility="public" file="FMX.Types.pas" line="910">
        <parameters>
          <parameter name="AStyle" type="TFmxObject" paramflags="const"/>
        </parameters>
      </constructor>
      <destructor name="Destroy" visibility="public" file="FMX.Types.pas" line="911">
        <parameters>
        </parameters>
      </destructor>
      <procedure name="NeedRebuild" visibility="public" file="FMX.Types.pas" line="914">
        <devnotes>
           <summary>Marks index for lazy update.</summary>
        </devnotes>
      </procedure>
      <procedure name="RebuildIfNeeded" visibility="public" file="FMX.Types.pas" line="916">
        <devnotes>
           <summary>Updates index, if it's required only.</summary>
        </devnotes>
      </procedure>
      <function name="FindStyleObject" visibility="public" file="FMX.Types.pas" line="918">
        <devnotes>
           <summary>Finds style object by specified <c>StyleLookup</c> value and returns object in <c>AObject</c>.</summary>
        </devnotes>
        <parameters>
          <parameter name="AStyleLookup" type="string" paramflags="const"/>
          <parameter name="AObject" type="TFmxObject" paramflags="var"/>
          <retval type="Boolean"/>
        </parameters>
      </function>
      <procedure name="Clear" visibility="public" file="FMX.Types.pas" line="920">
        <devnotes>
           <summary>Clears index.</summary>
        </devnotes>
      </procedure>
    </members>
  </class>
  <class name="TFmxObject" file="FMX.Types.pas" line="923">
    
    <interfaces>
      <implements name="IActionClient"/>
      <implements name="IFreeNotification"/>
    </interfaces>
    <members>
      <set name="TObjectState" visibility="public" alias="FMX.Types.TObjectState" file="FMX.Types.pas" line="930" symflags="deprecated">
        <element name="CallingFreeNotify"/>
        <element name="CallingRelease"/>
      </set>
      <field name="FChildren" type="TFmxObjectList" visibility="class private" size="4" offset="64" file="FMX.Types.pas" line="932"/>
      <field name="FChildrenList" type="TFmxChildrenList" visibility="class private" size="4" offset="68" file="FMX.Types.pas" line="933"/>
      <field name="FStyleIndexer" type="TStyleIndexer" visibility="class private" size="4" offset="72" file="FMX.Types.pas" line="934"/>
      <field name="FStored" type="Boolean" visibility="private" size="1" offset="76" file="FMX.Types.pas" line="936"/>
      <field name="FTagObject" type="TObject" visibility="private" size="4" offset="80" file="FMX.Types.pas" line="937">
        <attributes>
          <attribute name="TObject"/>
        </attributes>
      </field>
      <field name="FTagFloat" type="Single" visibility="private" size="4" offset="84" file="FMX.Types.pas" line="938"/>
      <field name="FTagString" type="string" visibility="private" size="4" offset="88" file="FMX.Types.pas" line="939"/>
      <field name="FNotifyList" type="TList&lt;System.Pointer&gt;" visibility="private" size="4" offset="92" file="FMX.Types.pas" line="940"/>
      <field name="FIndex" type="Integer" visibility="private" size="4" offset="96" file="FMX.Types.pas" line="941"/>
      <field name="FActionClient" type="Boolean" visibility="private" size="1" offset="100" file="FMX.Types.pas" line="942"/>
      <field name="FActionLink" type="TActionLink" visibility="private" size="4" offset="104" file="FMX.Types.pas" line="943"/>
      <field name="FRoot" type="IRoot" visibility="private" size="4" offset="108" file="FMX.Types.pas" line="944"/>
      <procedure name="SetStyleName" visibility="private" file="FMX.Types.pas" line="945">
        <parameters>
          <parameter name="Value" type="string" paramflags="const"/>
        </parameters>
      </procedure>
      <procedure name="SetStored" visibility="private" file="FMX.Types.pas" line="946">
        <parameters>
          <parameter name="Value" type="Boolean" paramflags="const"/>
        </parameters>
      </procedure>
      <function name="GetChildrenCount" visibility="private" procflags="inline" file="FMX.Types.pas" line="947">
        <parameters>
          <retval type="Integer"/>
        </parameters>
      </function>
      <function name="GetIndexOfChild" visibility="private" file="FMX.Types.pas" line="948">
        <parameters>
          <parameter name="Child" type="TFmxObject" paramflags="const"/>
          <retval type="Integer"/>
        </parameters>
      </function>
      <procedure name="SetIndexOfChild" visibility="private" file="FMX.Types.pas" line="949">
        <parameters>
          <parameter name="Child" type="TFmxObject" paramflags="const"/>
          <parameter name="NewIndex" type="Integer"/>
        </parameters>
      </procedure>
      <procedure name="SetIndex" visibility="private" file="FMX.Types.pas" line="950">
        <parameters>
          <parameter name="NewIndex" type="Integer"/>
        </parameters>
      </procedure>
      <function name="GetActionRoot" visibility="private" file="FMX.Types.pas" line="953">
        <parameters>
          <retval type="TComponent"/>
        </parameters>
      </function>
      <function name="GetActionClient" visibility="private" procflags="inline" file="FMX.Types.pas" line="954">
        <parameters>
          <retval type="Boolean"/>
        </parameters>
      </function>
      <procedure name="SetActionClient" visibility="private" file="FMX.Types.pas" line="955">
        <parameters>
          <parameter name="Value" type="Boolean" paramflags="const"/>
        </parameters>
      </procedure>
      <function name="GetAction" visibility="private" file="FMX.Types.pas" line="956">
        <parameters>
          <retval type="TBasicAction"/>
        </parameters>
      </function>
      <procedure name="SetAction" visibility="private" file="FMX.Types.pas" line="957">
        <parameters>
          <parameter name="Value" type="TBasicAction" paramflags="const"/>
        </parameters>
      </procedure>
      <function name="GetIndex" visibility="private" file="FMX.Types.pas" line="958">
        <parameters>
          <retval type="Integer"/>
        </parameters>
      </function>
      <procedure name="Create@" visibility="class private" procflags="class constructor noself" file="FMX.Types.pas" line="960">
      </procedure>
      <procedure name="Destroy@" visibility="class private" procflags="class destructor noself" file="FMX.Types.pas" line="961">
      </procedure>
      <field name="FStyleName" type="string" visibility="protected" size="4" offset="112" file="FMX.Types.pas" line="963"/>
      <field name="FParent" type="TFmxObject" visibility="protected" size="4" offset="116" file="FMX.Types.pas" line="964">
        <attributes>
          <attribute name="TObject"/>
        </attributes>
      </field>
      <function name="CreateChildrenList" visibility="protected" procflags="virtual" file="FMX.Types.pas" line="965">
        <parameters>
          <parameter name="Children" type="TFmxObjectList" paramflags="const"/>
          <retval type="TFmxChildrenList"/>
        </parameters>
      <devnotes><summary>
Embarcadero Technologies does not currently have any additional information.


</summary></devnotes></function>
      <procedure name="ResetChildrenIndicesSpan" visibility="protected" file="FMX.Types.pas" line="966">
        <parameters>
          <parameter name="First" type="Integer" paramflags="const"/>
          <parameter name="Last" type="Integer" paramflags="const"/>
        </parameters>
      <devnotes><summary>
Embarcadero Technologies does not currently have any additional information.


</summary></devnotes></procedure>
      <procedure name="ResetChildrenIndices" visibility="protected" file="FMX.Types.pas" line="967">
      <devnotes><summary>
Embarcadero Technologies does not currently have any additional information.


</summary></devnotes></procedure>
      <function name="GetBackIndex" visibility="protected" procflags="virtual" file="FMX.Types.pas" line="968">
        <parameters>
          <retval type="Integer"/>
        </parameters>
      <devnotes><summary>
Returns the first item in the children list. This value is usually 0, but for styled objects, which have a style as the first object in the children list, this value is 1.
</summary></devnotes></function>
      <procedure name="DefineProperties" visibility="protected" procflags="override" file="FMX.Types.pas" line="969">
        <parameters>
          <parameter name="Filer" type="TFiler"/>
        </parameters>
      <devnotes><summary>
Designates methods for storing an object's unpublished data on a stream such as a form file.
FMX.Types.TFmxObject.DefineProperties inherits from System.Classes.TComponent.DefineProperties. All content below this line refers to System.Classes.TComponent.DefineProperties.
Designates methods for storing an object's unpublished data on a stream such as a form file.
TComponent overrides the DefineProperties method defined in TPersistent to define &quot;fake&quot; Top and Left properties. These are defined so that components that are not controls can be manipulated at design time. However, the Top and Left properties are hidden, that is, they are not published, because only controls appear at run time.
DefineProperties is virtual; descendent classes can override it. When overriding DefineProperties, be aware that the Ancestor property of Filer might be set, and that this property can determine whether or not it is appropriate to write properties.
DefineProperties is called automatically as part of the component streaming system; do not call it directly.
</summary></devnotes></procedure>
      <procedure name="IgnoreBindingName" visibility="protected" file="FMX.Types.pas" line="970">
        <parameters>
          <parameter name="Reader" type="TReader"/>
        </parameters>
      <devnotes><summary>
Embarcadero Technologies does not currently have any additional information.


</summary></devnotes></procedure>
      <procedure name="GetChildren" visibility="protected" procflags="override" file="FMX.Types.pas" line="972">
        <parameters>
          <parameter name="Proc" type="TGetChildProc"/>
          <parameter name="Root" type="TComponent"/>
        </parameters>
      <devnotes><summary>
Enumerates all child components.
FMX.Types.TFmxObject.GetChildren inherits from System.Classes.TComponent.GetChildren. All content below this line refers to System.Classes.TComponent.GetChildren.
Enumerates all child components.
GetChildren is used internally in the component streaming system. It is not necessary to call it directly. 
GetChildren expects a TGetChildProc routine that receives all enumerated components. 
Root represents the owner of the components that will be enumerated.
This method does nothing in TComponent and is expected to be overridden in descendants. 
</summary></devnotes></procedure>
      <procedure name="SetParentComponent" visibility="protected" procflags="override" file="FMX.Types.pas" line="973">
        <parameters>
          <parameter name="Value" type="TComponent"/>
        </parameters>
      <devnotes><summary>
Sets the parent component.
FMX.Types.TFmxObject.SetParentComponent inherits from System.Classes.TComponent.SetParentComponent. All content below this line refers to System.Classes.TComponent.SetParentComponent.
Sets the parent component.
SetParentComponent is used internally in the component streaming system. It is not necessary to call it directly. 
Derived classes override this method to implement proper handling for parenting.
</summary></devnotes></procedure>
      <procedure name="Notification" visibility="protected" procflags="override" file="FMX.Types.pas" line="974">
        <parameters>
          <parameter name="AComponent" type="TComponent"/>
          <parameter name="Operation" type="TOperation"/>
        </parameters>
      <devnotes><summary>
Forwards notification messages to all owned components.
FMX.Types.TFmxObject.Notification inherits from System.Classes.TComponent.Notification. All content below this line refers to System.Classes.TComponent.Notification.
Forwards notification messages to all owned components.
Do not call the Notification method in an application. Notification is called automatically when 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.
A component can, if needed, act on the notification that a component is being inserted or removed. For example, if a component has object fields or properties that contain references to other components, it can check the notifications of component removals and invalidate those references as needed.

Note: Notification is not called for components that are freed implicitly (because their Owner is freed).</summary></devnotes></procedure>
      <function name="GetActionLinkClass" visibility="protected" procflags="virtual" file="FMX.Types.pas" line="976">
        <parameters>
          <retval type="TActionLinkClass"/>
        </parameters>
      <devnotes><summary>
Returns the associated action link class.
Returns the class reference for the TActionLink class or for one of its descendants. 
In TFmxObject, GetActionLinkClass always returns nil.
In descendant classes, GetActionLinkClass should return the appropriate class type for the action link used with the class object. When a control object of the descendant from the TFmxObject class tries to assign a value to the Action property, the setter method for Action calls GetActionLinkClass. If GetActionLinkClass returns a non-nil value, then the action object is assigned to Action. If the control object does not support actions, then GetActionLinkClass should return nil. In this case, attempting to set a value to the Action property raises the following exception:  

StrEActionNoSuported = 'Class %s does not support the action'    
</summary></devnotes></function>
      <procedure name="InitiateAction" visibility="protected" procflags="virtual" file="FMX.Types.pas" line="977">
      <devnotes><summary>
Calls the action link's Update method if the control is associated with an action link. Override it to customize the way the styled control initiates its associated action.
</summary></devnotes></procedure>
      <procedure name="DoActionChange" visibility="protected" procflags="virtual" file="FMX.Types.pas" line="978">
        <parameters>
          <parameter name="Sender" type="TObject"/>
        </parameters>
      <devnotes><summary>
TBasicAction.OnChange event dispatcher.
DoActionChange is called when a TBasicAction.OnChange event occurs. 
Do not call DoActionChange explicitly in an application. It is for internal use.
</summary></devnotes></procedure>
      <procedure name="ActionChange" visibility="protected" procflags="virtual" file="FMX.Types.pas" line="979">
        <parameters>
          <parameter name="Sender" type="TBasicAction"/>
          <parameter name="CheckDefaults" type="Boolean"/>
        </parameters>
      <devnotes><summary>
Specifies the behavior of a TFmxObject object when Action changes. 
By default, ActionChange does nothing. 
In descendant classes, for example in descendants of TControl, to customize the behavior of a control when Action changes, override TControl.ActionChange. 
Do not call ActionChange explicitly in an application. It is for internal use.
</summary></devnotes></procedure>
      <procedure name="DoActionClientChanged" visibility="protected" procflags="virtual" file="FMX.Types.pas" line="980">
      <devnotes><summary>
Embarcadero Technologies does not currently have any additional information.


</summary></devnotes></procedure>
      <property name="ActionLink" visibility="protected" read="FActionLink" type="TActionLink" file="FMX.Types.pas" line="981"><devnotes><summary>
Embarcadero Technologies does not currently have any additional information.


</summary></devnotes></property>
      <property name="Action" visibility="protected" read="GetAction" write="SetAction" type="TBasicAction" file="FMX.Types.pas" line="982"><devnotes><summary>
Specifies the action associated with the control.
Action allows an application to centralize the response to user commands. When a control is associated with an action, the action determines the appropriate properties and events of the control (such as whether the control is enabled or how it responds to an OnClick event).
If an object of the descendant from the TFmxObject class does not support actions, and when this object tries to assign a value to the Action property, the setter method for Action calls GetActionLinkClass that should return nil. In this case, attempting to set a value to the Action property raises the following exception: 

StrEActionNoSuported = 'Class %s does not support the action'       
</summary></devnotes></property>
      <property name="StyleIndexer" visibility="protected" read="FStyleIndexer" type="TStyleIndexer" file="FMX.Types.pas" line="983"><devnotes><summary>
Embarcadero Technologies does not currently have any additional information.


</summary></devnotes></property>
      <function name="GetParentComponent" visibility="public" procflags="override" file="FMX.Types.pas" line="985">
        <parameters>
          <retval type="TComponent"/>
        </parameters>
      <devnotes><summary>
Returns the containing component.
FMX.Types.TFmxObject.GetParentComponent inherits from System.Classes.TComponent.GetParentComponent. All content below this line refers to System.Classes.TComponent.GetParentComponent.
Returns the containing component.
GetParentComponent returns a reference to the component that contains the current component, or nil if there is no container. Use HasParent to determine whether a component has a containing component. 
For example, a button on a panel on a form returns the panel, the panel returns the form, and the form returns nil.
</summary></devnotes></function>
      <function name="HasParent" visibility="public" procflags="override" file="FMX.Types.pas" line="986">
        <parameters>
          <retval type="Boolean"/>
        </parameters>
      <devnotes><summary>
Verifies whether the component has a parent.
FMX.Types.TFmxObject.HasParent inherits from System.Classes.TComponent.HasParent. All content below this line refers to System.Classes.TComponent.HasParent.
Verifies whether the component has a parent.
Call HasParent to determine whether a specific component has a parent. 
Derived classes override this method to implement proper handling for parenting.
Use GetParentComponent to retrieve the component reference.
</summary></devnotes></function>
      <procedure name="AddToResourcePool" visibility="protected" procflags="virtual" file="FMX.Types.pas" line="988">
      <devnotes><summary>
Embarcadero Technologies does not currently have any additional information.


</summary></devnotes></procedure>
      <procedure name="RemoveFromResourcePool" visibility="protected" procflags="virtual" file="FMX.Types.pas" line="989">
      <devnotes><summary>
Embarcadero Technologies does not currently have any additional information.


</summary></devnotes></procedure>
      <procedure name="SetParent" visibility="protected" procflags="virtual" file="FMX.Types.pas" line="991">
        <parameters>
          <parameter name="Value" type="TFmxObject" paramflags="const"/>
        </parameters>
      <devnotes><summary>
Protected setter implementation for the Parent property.
</summary></devnotes></procedure>
      <procedure name="DoRootChanging" visibility="protected" procflags="virtual" file="FMX.Types.pas" line="992">
        <parameters>
          <parameter name="NewRoot" type="IRoot" paramflags="const"/>
        </parameters>
      <devnotes><summary>
Embarcadero Technologies does not currently have any additional information.


</summary></devnotes></procedure>
      <procedure name="DoRootChanged" visibility="protected" procflags="virtual" file="FMX.Types.pas" line="993">
      <devnotes><summary>
Embarcadero Technologies does not currently have any additional information.


</summary></devnotes></procedure>
      <procedure name="ParentChanged" visibility="protected" procflags="virtual" file="FMX.Types.pas" line="994">
      <devnotes><summary>
Notification method called after the parent is changed. ParentChanged is a virtual method to be implemented in subclasses to allow for changing the parent of this FMX object.
</summary></devnotes></procedure>
      <procedure name="ChangeOrder" visibility="protected" procflags="virtual" file="FMX.Types.pas" line="995">
      <devnotes><summary>
Notification method called after the creation order is changed. ChangeOrder is a virtual method to be implemented in subclasses to allow for changing the creation order of this FMX object.
</summary></devnotes></procedure>
      <procedure name="ChangeChildren" visibility="protected" procflags="virtual" file="FMX.Types.pas" line="996">
      <devnotes><summary>
Embarcadero Technologies does not currently have any additional information.


</summary></devnotes></procedure>
      <procedure name="DoAddObject" visibility="protected" procflags="virtual" file="FMX.Types.pas" line="998">
        <parameters>
          <parameter name="AObject" type="TFmxObject" paramflags="const"/>
        </parameters>
      <devnotes><summary>
Adds the AObject object to the Children list of children attached to this parent object (self).
DoAddObject adds the object provided in the AObject parameter to the list of children stored in the Children property of this object (self). DoAddObject changes the parent of AObject to this object (self) and sets the root of AObject to the Root object of this object (self).
Descendant classes, like TCommonCustomForm and TControl, additionally handle tab stop lists keeping ordered lists of objects to which the user can tab. If such descendant class supports the ITabStopController interface and AObject is an object of a class supporting the IControl interface, then DoAddObject of this descendant adds AObject to the TabList tab stop lists of the (self) object. 
DoAddObject is internally called from AddObject.
</summary></devnotes></procedure>
      <procedure name="DoInsertObject" visibility="protected" procflags="virtual" file="FMX.Types.pas" line="999">
        <parameters>
          <parameter name="Index" type="Integer"/>
          <parameter name="AObject" type="TFmxObject" paramflags="const"/>
        </parameters>
      <devnotes><summary>
Embarcadero Technologies does not currently have any additional information.


</summary></devnotes></procedure>
      <procedure name="DoRemoveObject" visibility="protected" procflags="virtual" file="FMX.Types.pas" line="1000">
        <parameters>
          <parameter name="AObject" type="TFmxObject" paramflags="const"/>
        </parameters>
      <devnotes><summary>
Embarcadero Technologies does not currently have any additional information.


</summary></devnotes></procedure>
      <procedure name="DoDeleteChildren" visibility="protected" procflags="virtual" file="FMX.Types.pas" line="1001">
      <devnotes><summary>
Embarcadero Technologies does not currently have any additional information.


</summary></devnotes></procedure>
      <function name="SearchInto" visibility="protected" procflags="virtual" file="FMX.Types.pas" line="1002">
        <parameters>
          <retval type="Boolean"/>
        </parameters>
      <devnotes><summary>
Embarcadero Technologies does not currently have any additional information.


</summary></devnotes></function>
      <procedure name="FreeNotification" visibility="protected" procflags="virtual" file="FMX.Types.pas" line="1004">
        <parameters>
          <parameter name="AObject" type="TObject"/>
        </parameters>
      <devnotes><summary>
Ensures that AComponent is notified that the component is going to be destroyed.
FMX.Types.TFmxObject.FreeNotification inherits from System.Classes.TComponent.FreeNotification. All content below this line refers to System.Classes.TComponent.FreeNotification.
Ensures that AComponent is notified that the component is going to be destroyed.
Use FreeNotification to register AComponent as a component that should be notified when the component is about to be destroyed. It is only necessary to register components this way when they are in a different form or have a different owner. For example, if AComponent is in another form and uses the component to implement a property, it must call FreeNotification so that its Notification method is called when the component is destroyed.
For components with the same owner, the Notification method is called automatically when an application explicitly frees the component. This notification is not sent out when components are freed implicitly, because the Owner is already being freed.
</summary></devnotes></procedure>
      <function name="SupportsPlatformService" visibility="protected" procflags="virtual" file="FMX.Types.pas" line="1006">
        <parameters>
          <parameter name="AServiceGUID" type="TGUID" paramflags="const"/>
          <parameter name="AService" paramflags="out"/>
          <retval type="Boolean"/>
        </parameters>
      <devnotes><summary>
Embarcadero Technologies does not currently have any additional information.


</summary></devnotes></function>
      <function name="GetData" visibility="protected" procflags="virtual" file="FMX.Types.pas" line="1008">
        <parameters>
          <retval type="TValue">
            <attributes>
              <attribute name="HPPGENAttribute"/>
            </attributes>
          </retval>
        </parameters>
      <devnotes><summary>
Protected getter implementation for the Data property.
</summary></devnotes></function>
      <procedure name="SetData" visibility="protected" procflags="virtual" file="FMX.Types.pas" line="1009">
        <parameters>
          <parameter name="Value" type="TValue" paramflags="const"/>
        </parameters>
      <devnotes><summary>
Protected setter implementation for the Data property.
</summary></devnotes></procedure>
      <procedure name="IgnoreIntegerValue" visibility="protected" file="FMX.Types.pas" line="1010">
        <parameters>
          <parameter name="Reader" type="TReader"/>
        </parameters>
      <devnotes><summary>
Embarcadero Technologies does not currently have any additional information.


</summary></devnotes></procedure>
      <procedure name="IgnoreFloatValue" visibility="protected" file="FMX.Types.pas" line="1011">
        <parameters>
          <parameter name="Reader" type="TReader"/>
        </parameters>
      <devnotes><summary>
Embarcadero Technologies does not currently have any additional information.


</summary></devnotes></procedure>
      <procedure name="IgnoreBooleanValue" visibility="protected" file="FMX.Types.pas" line="1012">
        <parameters>
          <parameter name="Reader" type="TReader"/>
        </parameters>
      <devnotes><summary>
Embarcadero Technologies does not currently have any additional information.


</summary></devnotes></procedure>
      <procedure name="IgnoreIdentValue" visibility="protected" file="FMX.Types.pas" line="1013">
        <parameters>
          <parameter name="Reader" type="TReader"/>
        </parameters>
      <devnotes><summary>
Embarcadero Technologies does not currently have any additional information.


</summary></devnotes></procedure>
      <constructor name="Create" visibility="public" file="FMX.Types.pas" line="1015">
        <parameters>
          <parameter name="AOwner" type="TComponent"/>
        </parameters>
      <devnotes><summary>
Allocates memory and constructs a safely initialized instance of a component.
FMX.Types.TFmxObject.Create inherits from System.Classes.TComponent.Create. All content below this line refers to System.Classes.TComponent.Create.
Allocates memory and constructs a safely initialized instance of a component.
All objects have a Create method that constructs the object. TComponent redefines Create so that, for components, Create also:

Establishes the relationship of a component and its Owner, as indicated by the AOwner parameter.
Sets the ComponentStyle property to csInheritable, meaning that the component can be inherited by a descendent form type.
It is not necessary to explicitly create components added in the Form Designer. These components are created automatically when the application is run, and they are destroyed when the application is closed.
For components created programmatically, that is, not created in the Form Designer, call Create and pass in an owner component as the AOwner parameter. The owner disposes of the component when it is destroyed. If the component is not owned, then use Free when it needs to be destroyed.

Tip:  When passing in Self as the Owner parameter, consider what Self references. If a component creates another component in one of its methods, then Self refers to the first component and not the component being created, which is then owned by the first component.
Note:  The TComponent constructor is virtual in part to allow polymorphic instantiation of class references. This is critical to the streaming system and to the Form Designer. Do not forget to use the override directive when declaring a new component's Create constructor.</summary></devnotes></constructor>
      <destructor name="Destroy" visibility="public" file="FMX.Types.pas" line="1016">
        <parameters>
        </parameters>
      <devnotes><summary>
Disposes of the component and its owned components.
FMX.Types.TFmxObject.Destroy inherits from System.Classes.TComponent.Destroy. All content below this line refers to System.Classes.TComponent.Destroy.
Disposes of the component and its owned components.
Do not call Destroy directly. Call Free instead. Free verifies that the component is not nil, and only then calls Destroy.
Never explicitly free a component in one of its own event handlers, nor free a component from the event handler of a component that it owns or contains.
To destroy a form, call its Release method. Release waits for all the form's event handlers and the event handlers of the form's components to finish executing before destroying the form.

Note: A form owns all the controls and nonvisual components that are placed on it in design mode. When it is freed, all of these components are automatically freed as well. By default, all forms are owned by the global Application object. When an application terminates, it frees the global Application object, which frees all forms. For objects that are not components, and for components created with a nil owner, be sure to call Free after finishing with the object; otherwise the memory allocated for the object will be lost until the application terminates.</summary></devnotes></destructor>
      <procedure name="BeforeDestruction" visibility="public" procflags="override" file="FMX.Types.pas" line="1017">
      <devnotes><summary>
Performs any necessary actions before the first destructor is called.
FMX.Types.TFmxObject.BeforeDestruction inherits from System.Classes.TComponent.BeforeDestruction. All content below this line refers to System.Classes.TComponent.BeforeDestruction.
Performs any necessary actions before the first destructor is called.
BeforeDestruction is called automatically immediately before the component's first destructor executes. Do not call it explicitly in your applications.
As implemented in TComponent, BeforeDestruction checks whether the Destroying method has been called, and if not, calls it. Descendants that override this method to perform other actions before a component is destroyed should call the inherited method first to ensure that this check takes place.
</summary></devnotes></procedure>
      <procedure name="Release" visibility="public" procflags="virtual" file="FMX.Types.pas" line="1018">
      <devnotes><summary>

Warning: Release is deprecated.  


Marks this TFmxObject object  for delayed deletion. 
</summary></devnotes></procedure>
      <function name="Released" visibility="public" file="FMX.Types.pas" line="1019" symflags="deprecated">
        <parameters>
          <retval type="Boolean"/>
        </parameters>
      </function>
      <function name="ObjectState" visibility="public" file="FMX.Types.pas" line="1022" symflags="deprecated">
        <devnotes>
           <summary> Describes the current state of this instance. Indicates that a component needs to avoid certain
           actions. <para>See also <b>TComponent.ComponentState</b></para></summary>
        </devnotes>
        <parameters>
          <retval type="TFmxObject.TObjectState" symflags="deprecated">
          </retval>
        </parameters>
      </function>
      <procedure name="SetRoot" visibility="public" file="FMX.Types.pas" line="1023">
        <parameters>
          <parameter name="ARoot" type="IRoot"/>
        </parameters>
      <devnotes><summary>
Sets the Root property of each child in the children list.
</summary></devnotes></procedure>
      <procedure name="SetDesign" visibility="public" file="FMX.Types.pas" line="1025">
        <parameters>
          <parameter name="Value" type="Boolean"/>
          <parameter name="SetChildren" type="Boolean">
            <value>
              True
            </value>
          </parameter>
        </parameters>
      <devnotes><summary>
Sets the csDesigning in TComponentState. Used internally by the IDE.
</summary></devnotes></procedure>
      <function name="Clone" visibility="public" file="FMX.Types.pas" line="1027">
        <parameters>
          <parameter name="AOwner" type="TComponent" paramflags="const"/>
          <retval type="TFmxObject"/>
        </parameters>
      <devnotes><summary>
Returns a new cloned instance of this FMX object.
Clone internally creates and returns a new FMX object that is an exact copy of this object.

Note: The class you want to clone must be registered and be a descendant of TFmxObject. Use RegisterClass or RegisterFMXClasses for your components.

</summary></devnotes></function>
      <procedure name="AddObject" visibility="public" file="FMX.Types.pas" line="1029">
        <parameters>
          <parameter name="AObject" type="TFmxObject" paramflags="const"/>
        </parameters>
      <devnotes><summary>
Adds the AObject object to the Children list of children attached to this parent object (self).
AddObject internally calls DoAddObject that implements all business functionality of AddObject.
AddObject adds the object provided in the AObject parameter to the list of children stored in the Children property of this object (self). AddObject changes the parent of AObject to this object (self) and sets the root of AObject to the Root object of this object (self).
Descendant classes, like TCommonCustomForm and TControl, additionally handle tab stop lists keeping ordered lists of objects to which the user can tab. If such descendant class supports the ITabStopController interface and AObject is an object of a class supporting the IControl interface, then AddObject of this descendant adds AObject to the TabList tab stop lists of the (self) object. 
</summary></devnotes></procedure>
      <procedure name="InsertObject" visibility="public" file="FMX.Types.pas" line="1030">
        <parameters>
          <parameter name="Index" type="Integer"/>
          <parameter name="AObject" type="TFmxObject" paramflags="const"/>
        </parameters>
      <devnotes><summary>
Adds the object provided in the parameter to the FChildren TList of this object (self), at the specified position (index).
The InsertObject method is similar to the AddObject method, except that InsertObject inserts the given object to the given position specified by the Index parameter.
</summary></devnotes></procedure>
      <procedure name="RemoveObject" visibility="public" procflags="overload" file="FMX.Types.pas" line="1031">
        <parameters>
          <parameter name="AObject" type="TFmxObject" paramflags="const"/>
        </parameters>
      <devnotes><summary>
Removes a children object from its parent. Calling RemoveObject is equivalent to setting Parent to nil.
RemoveObject has two overloaded methods. The first one removes the object specified through the AObject parameter, which is of type TFmxObject. The second one removes the object whose index is specified through the Index parameter.

Tip: If you want to use RemoveObject on an object, that object must have been added to the children list through the AddObject method.</summary></devnotes></procedure>
      <procedure name="RemoveObject" visibility="public" procflags="overload" file="FMX.Types.pas" line="1032">
        <parameters>
          <parameter name="Index" type="Integer"/>
        </parameters>
      <devnotes><summary>
Removes a children object from its parent. Calling RemoveObject is equivalent to setting Parent to nil.
RemoveObject has two overloaded methods. The first one removes the object specified through the AObject parameter, which is of type TFmxObject. The second one removes the object whose index is specified through the Index parameter.

Tip: If you want to use RemoveObject on an object, that object must have been added to the children list through the AddObject method.</summary></devnotes></procedure>
      <function name="ContainsObject" visibility="public" procflags="virtual" file="FMX.Types.pas" line="1033">
        <parameters>
          <parameter name="AObject" type="TFmxObject"/>
          <retval type="Boolean"/>
        </parameters>
      <devnotes><summary>
Returns True if the specified object is a direct child.
ContainsObject returns True if the specified object (AObject) is a direct child of this TFmxObject (self). It returns False otherwise.
Unlike IsChild, ContainsObject only returns True when passed a direct child of this object as AObject. For example, if A is a direct child of this object, and B is a direct child of A, ContainsObject returns True when passed A as AObject, but it returns False when passed B.
</summary></devnotes></function>
      <procedure name="Exchange" visibility="public" procflags="virtual" file="FMX.Types.pas" line="1034">
        <parameters>
          <parameter name="AObject1" type="TFmxObject" paramflags="const"/>
          <parameter name="AObject2" type="TFmxObject" paramflags="const"/>
        </parameters>
      <devnotes><summary>
Exchanges two objects from the children list. Exchange exchanges AObject1 with AObject2.
</summary></devnotes></procedure>
      <procedure name="DeleteChildren" visibility="public" file="FMX.Types.pas" line="1035">
      <devnotes><summary>
Deletes all the children of this FMX object.
DeleteChildren checks whether Children is assigned (children are present) and, if so, it deletes all of them. DeleteChildren also sets Children to nil.
</summary></devnotes></procedure>
      <function name="IsChild" visibility="public" procflags="virtual" file="FMX.Types.pas" line="1036">
        <parameters>
          <parameter name="AObject" type="TFmxObject"/>
          <retval type="Boolean"/>
        </parameters>
      <devnotes><summary>
Returns True if the specified object is a child.
IsChild returns True if the specified object (AObject) is a child of this TFmxObject (self) or any of its children, grand-children, etc. It returns False otherwise.
Unlike ContainsObject, IsChild not only returns True when passed a direct child of this object as AObject, but also when the specified object is a grand-child, grand-grand-child, and so on of this object. For example, if A is a direct child of this object, and B is a direct child of A, IsChild returns True both when passed A as AObject and when passed B.
</summary></devnotes></function>
      <procedure name="BringChildToFront" visibility="public" file="FMX.Types.pas" line="1037">
        <parameters>
          <parameter name="Child" type="TFmxObject" paramflags="const"/>
        </parameters>
      <devnotes><summary>
Embarcadero Technologies does not currently have any additional information.


</summary></devnotes></procedure>
      <procedure name="SendChildToBack" visibility="public" file="FMX.Types.pas" line="1038">
        <parameters>
          <parameter name="Child" type="TFmxObject" paramflags="const"/>
        </parameters>
      <devnotes><summary>
Embarcadero Technologies does not currently have any additional information.


</summary></devnotes></procedure>
      <procedure name="BringToFront" visibility="public" procflags="virtual" file="FMX.Types.pas" line="1039">
      <devnotes><summary>
Brings this FMX visual object on top of other overlapping visual controls that are on the same form.
You can call BringToFront at run time as in the following code snippet:

  Label1.BringToFront;

or, at design time, by right-clicking the FMX visual control and selecting Control &gt; Bring to Front from the pop-up menu.
</summary></devnotes></procedure>
      <procedure name="SendToBack" visibility="public" procflags="virtual" file="FMX.Types.pas" line="1040">
      <devnotes><summary>
Sends this FMX visual object to the background letting other overlapping visual controls that are on the same form to be on top of it.
You can call SendToBack at run time as in the following code snippet:

  Label1.SendToBack;

or, at design time by right-clicking the FMX visual control and selecting  Control &gt; Send To Back from the pop-up menu.
</summary></devnotes></procedure>
      <procedure name="AddObjectsToList" visibility="public" file="FMX.Types.pas" line="1041">
        <parameters>
          <parameter name="AList" type="TFmxObjectList" paramflags="const"/>
        </parameters>
      <devnotes><summary>
Adds the children of this object to the given list.
The AddObjectsToList method adds all objects that are owned by this object (stored in the Children field) and all of the objects owned by them to the TList provided in the AList parameter.

</summary></devnotes></procedure>
      <procedure name="Sort" visibility="public" procflags="virtual" file="FMX.Types.pas" line="1042">
        <parameters>
          <parameter name="Compare" type="TFmxObjectSortCompare"/>
        </parameters>
      <devnotes><summary>
Sorts the children in the children list using the specified sorting procedure.
</summary></devnotes></procedure>
      <procedure name="EnumObjects" visibility="public" file="FMX.Types.pas" line="1044">
        <devnotes><summary>
Loops through the children of this object, and runs the specified procedure once per object as the first parameter in each call. 
</summary></devnotes>
        <parameters>
          <parameter name="Proc" type="TFunc&lt;FMX.Types.TFmxObject,FMX.Types.TEnumProcResult&gt;" paramflags="const"/>
        </parameters>
      </procedure>
      <procedure name="AnimateFloat" visibility="public" file="FMX.Types.pas" line="1046" symflags="deprecated">
        <parameters>
          <parameter name="APropertyName" type="string" paramflags="const"/>
          <parameter name="NewValue" type="Single" paramflags="const"/>
          <parameter name="Duration" type="Single">
            <value>
              0.2
            </value>
          </parameter>
          <parameter name="AType" type="TAnimationType">
            <value>
              In
            </value>
          </parameter>
          <parameter name="AInterpolation" type="TInterpolationType">
            <value>
              Linear
            </value>
          </parameter>
        </parameters>
      </procedure>
      <procedure name="AnimateFloatDelay" visibility="public" file="FMX.Types.pas" line="1049" symflags="deprecated">
        <parameters>
          <parameter name="APropertyName" type="string" paramflags="const"/>
          <parameter name="NewValue" type="Single" paramflags="const"/>
          <parameter name="Duration" type="Single">
            <value>
              0.2
            </value>
          </parameter>
          <parameter name="Delay" type="Single">
            <value>
              0
            </value>
          </parameter>
          <parameter name="AType" type="TAnimationType">
            <value>
              In
            </value>
          </parameter>
          <parameter name="AInterpolation" type="TInterpolationType">
            <value>
              Linear
            </value>
          </parameter>
        </parameters>
      </procedure>
      <procedure name="AnimateFloatWait" visibility="public" file="FMX.Types.pas" line="1053" symflags="deprecated">
        <parameters>
          <parameter name="APropertyName" type="string" paramflags="const"/>
          <parameter name="NewValue" type="Single" paramflags="const"/>
          <parameter name="Duration" type="Single">
            <value>
              0.2
            </value>
          </parameter>
          <parameter name="AType" type="TAnimationType">
            <value>
              In
            </value>
          </parameter>
          <parameter name="AInterpolation" type="TInterpolationType">
            <value>
              Linear
            </value>
          </parameter>
        </parameters>
      </procedure>
      <procedure name="AnimateInt" visibility="public" file="FMX.Types.pas" line="1056" symflags="deprecated">
        <parameters>
          <parameter name="APropertyName" type="string" paramflags="const"/>
          <parameter name="NewValue" type="Integer" paramflags="const"/>
          <parameter name="Duration" type="Single">
            <value>
              0.2
            </value>
          </parameter>
          <parameter name="AType" type="TAnimationType">
            <value>
              In
            </value>
          </parameter>
          <parameter name="AInterpolation" type="TInterpolationType">
            <value>
              Linear
            </value>
          </parameter>
        </parameters>
      </procedure>
      <procedure name="AnimateIntWait" visibility="public" file="FMX.Types.pas" line="1059" symflags="deprecated">
        <parameters>
          <parameter name="APropertyName" type="string" paramflags="const"/>
          <parameter name="NewValue" type="Integer" paramflags="const"/>
          <parameter name="Duration" type="Single">
            <value>
              0.2
            </value>
          </parameter>
          <parameter name="AType" type="TAnimationType">
            <value>
              In
            </value>
          </parameter>
          <parameter name="AInterpolation" type="TInterpolationType">
            <value>
              Linear
            </value>
          </parameter>
        </parameters>
      </procedure>
      <procedure name="AnimateColor" visibility="public" file="FMX.Types.pas" line="1062" symflags="deprecated">
        <parameters>
          <parameter name="APropertyName" type="string" paramflags="const"/>
          <parameter name="NewValue" type="TAlphaColor"/>
          <parameter name="Duration" type="Single">
            <value>
              0.2
            </value>
          </parameter>
          <parameter name="AType" type="TAnimationType">
            <value>
              In
            </value>
          </parameter>
          <parameter name="AInterpolation" type="TInterpolationType">
            <value>
              Linear
            </value>
          </parameter>
        </parameters>
      </procedure>
      <procedure name="StopPropertyAnimation" visibility="public" file="FMX.Types.pas" line="1065">
        <parameters>
          <parameter name="APropertyName" type="string" paramflags="const"/>
        </parameters>
      <devnotes><summary>
Stops the animation of the specified property of this FMX object.
StopPropertyAnimation iterates through all the children of this FMX object and, if one of them is of type TFloatAnimation or TColorAnimation and is assigned to the specified property (APropertyName), stops the animation.
</summary></devnotes></procedure>
      <procedure name="AddFreeNotify" visibility="public" file="FMX.Types.pas" line="1067">
        <parameters>
          <parameter name="AObject" type="IFreeNotification" paramflags="const"/>
        </parameters>
      <devnotes><summary>
Adds AObject to the list of objects to be notified when this TFmxObject is destroyed.
The AObject parameter can be any object that implements the IFreeNotification interface, such as a TBrushResource, or a TBrushBitmap.
</summary></devnotes></procedure>
      <procedure name="RemoveFreeNotify" visibility="public" file="FMX.Types.pas" line="1068">
        <parameters>
          <parameter name="AObject" type="IFreeNotification" paramflags="const"/>
        </parameters>
      <devnotes><summary>
Removes the given object from the free notifications list.
The RemoveFreeNotify method removes the object specified through the AObject parameter, which is of type TFmxObject.

Tip: If you want to use RemoveFreeNotify on an object, that object must have been added to the free notifications list using the AddFreeNotify method.</summary></devnotes></procedure>
      <function name="FindStyleResource" visibility="public" procflags="overload virtual" file="FMX.Types.pas" line="1070">
        <parameters>
          <parameter name="AStyleLookup" type="string" paramflags="const"/>
          <parameter name="AClone" type="Boolean" paramflags="const">
            <value>
              False
            </value>
          </parameter>
          <retval type="TFmxObject"/>
        </parameters>
      <devnotes><summary>
Returns the style resource object with the specified (AStyleLookup).
If AStyleLookup is empty, FindStyleResource returns nil. If no resource object is linked directly to the control, FindStyleResource looks for the styles of the control's children. If no resource object is found, it returns nil.
Clone determines whether the returned style resource object should be the original style object (False) or a copy of the original (True).
</summary></devnotes></function>
      <property name="Root" visibility="public" read="FRoot" type="IRoot" file="FMX.Types.pas" line="1072"><devnotes><summary>
Specifies the root parent of this object.
The Root property is a link to the root parent of this object.
By default, the root object is the youngest parent in the hierarchy of the object parents, which supports the IRoot interface. If no parent supports IRoot, then Root = nil.
Notice that a Root object provides the Focused, Hovered, and Captured properties. Therefore, among the Children of the Root object, at each moment, there can only be one:

Focused control.
Control that has captured the mouse.
Control over which the mouse is hovering.</summary></devnotes></property>
      <property name="Stored" visibility="public" read="FStored" write="SetStored" type="Boolean" file="FMX.Types.pas" line="1073"><devnotes><summary>
Specifies whether this object is stored in the .XFM file.
Set the Stored property to True to store the object in the .XFM file. Otherwise, set Stored to False.


</summary></devnotes></property>
      <property name="TagObject" visibility="public" read="FTagObject" write="FTagObject" type="TObject" file="FMX.Types.pas" line="1075"><devnotes><summary>
Custom property that stores any object value.
</summary></devnotes></property>
      <property name="TagFloat" visibility="public" read="FTagFloat" write="FTagFloat" type="Single" default="0" file="FMX.Types.pas" line="1076"><devnotes><summary>
Custom property that stores any floating-point value.
</summary></devnotes></property>
      <property name="TagString" visibility="public" read="FTagString" write="FTagString" type="string" default="0" file="FMX.Types.pas" line="1077"><devnotes><summary>
Custom property that stores any string value.
</summary></devnotes></property>
      <property name="ChildrenCount" visibility="public" read="GetChildrenCount" type="Integer" file="FMX.Types.pas" line="1079"><devnotes><summary>
Read-only property that specifies the number of children in the children list.
</summary></devnotes></property>
      <property name="Children" visibility="public" read="FChildrenList" type="TFmxChildrenList" file="FMX.Types.pas" line="1080"><devnotes><summary>
Stores an array of children attached to this parent component.
Use the Children property to access each of the children attached to this parent component.
</summary></devnotes></property>
      <property name="Data" visibility="public" read="GetData" write="SetData" type="TValue" file="FMX.Types.pas" line="1081"><devnotes><summary>
Stores a Tvalue, which is a data structure that can store different kinds of data types.
Data has no predefined meaning. Although Data is used for LiveBinding, any succesor override this behavior. Then, the behaviour of Data is based on the type of its value.

Note: Do not use this member. It is for internal use only.

</summary></devnotes></property>
      <property name="Parent" visibility="public" read="FParent" write="SetParent" type="TFmxObject" file="FMX.Types.pas" line="1082"><devnotes><summary>
Specifies the parent component of this FMX object.

Tip: You cannot set the parent of this component as the component itself (Self (Delphi) or this (C++Builder)).</summary></devnotes></property>
      <property name="Index" visibility="public" read="GetIndex" write="SetIndex" type="Integer" file="FMX.Types.pas" line="1083"><devnotes><summary>
Specifies the index of the child object in the children array attached to this object.
</summary></devnotes></property>
      <property name="ActionClient" visibility="public" read="GetActionClient" type="Boolean" file="FMX.Types.pas" line="1084"><devnotes><summary>
Specifies whether the component object has an associated action.
If ActionClient is True, this component object is the client of an associated action. 
If ActionClient is False, this component object is not the client of an action. 
This property can be checked before calling GetActionLinkClass. 
</summary></devnotes></property>
      <property name="StyleName" visibility="published" read="FStyleName" write="SetStyleName" type="string" default="0" file="FMX.Types.pas" line="1086"><devnotes><summary>
Specifies the style name for this FMX component.
Read or set the StyleName property to obtain or to set the name of the style for this FireMonkey component. For instance, a TRectangle object can have StyleName set to 'backgroundstyle' or 'panelstyle'.
</summary></devnotes></property>
    </members>
  <devnotes><summary>
The base class for FireMonkey components.
TFmxObject extends TComponent to provide low-level functionality to FireMonkey components, including:

Creating, destroying, and releasing objects
Cloning, storing, and loading objects from a stream
Child object manipulations (add, remove, search)
Free notifications
Support for FireMonkey styles
Support for FireMonkey animations

</summary></devnotes></class>
  <class name="TTabList" file="FMX.Types.pas" line="1089">
    
    <interfaces>
      <implements name="ITabList"/>
    </interfaces>
    <members>
      <field name="FTabList" type="TList&lt;FMX.Types.IControl&gt;" visibility="class private" size="4" offset="8" file="FMX.Types.pas" line="1091"/>
      <procedure name="CreateTabList" visibility="class private" file="FMX.Types.pas" line="1092">
      </procedure>
      <function name="ParentIsRoot" visibility="class private" file="FMX.Types.pas" line="1093">
        <parameters>
          <retval type="Boolean"/>
        </parameters>
      </function>
      <function name="IsAddable" visibility="protected" procflags="virtual" file="FMX.Types.pas" line="1095">
        <parameters>
          <parameter name="TabStop" type="IControl" paramflags="const"/>
          <retval type="Boolean"/>
        </parameters>
      </function>
      <constructor name="Create" visibility="public" file="FMX.Types.pas" line="1097">
        <parameters>
          <parameter name="TabStopController" type="ITabStopController" paramflags="const"/>
        </parameters>
      </constructor>
      <destructor name="Destroy" visibility="public" file="FMX.Types.pas" line="1098">
        <parameters>
        </parameters>
      </destructor>
      <procedure name="Clear" visibility="public" file="FMX.Types.pas" line="1099">
      </procedure>
      <procedure name="Add" visibility="public" procflags="virtual" file="FMX.Types.pas" line="1100">
        <parameters>
          <parameter name="TabStop" type="IControl" paramflags="const"/>
        </parameters>
      </procedure>
      <procedure name="Remove" visibility="public" procflags="virtual" file="FMX.Types.pas" line="1101">
        <parameters>
          <parameter name="TabStop" type="IControl" paramflags="const"/>
        </parameters>
      </procedure>
      <procedure name="Update" visibility="public" file="FMX.Types.pas" line="1102">
        <parameters>
          <parameter name="TabStop" type="IControl" paramflags="const"/>
          <parameter name="NewValue" type="TTabOrder" paramflags="const"/>
        </parameters>
      </procedure>
      <function name="IndexOf" visibility="public" procflags="virtual" file="FMX.Types.pas" line="1103">
        <parameters>
          <parameter name="TabStop" type="IControl" paramflags="const"/>
          <retval type="Integer"/>
        </parameters>
      </function>
      <function name="GetCount" visibility="public" procflags="virtual" file="FMX.Types.pas" line="1104">
        <parameters>
          <retval type="Integer"/>
        </parameters>
      </function>
      <function name="GetItem" visibility="public" procflags="virtual" file="FMX.Types.pas" line="1105">
        <parameters>
          <parameter name="Index" type="Integer" paramflags="const"/>
          <retval type="IControl"/>
        </parameters>
      </function>
      <function name="GetTabOrder" visibility="public" file="FMX.Types.pas" line="1106">
        <parameters>
          <parameter name="TabStop" type="IControl" paramflags="const"/>
          <retval type="TTabOrder"/>
        </parameters>
      </function>
      <function name="FindNextTabStop" visibility="public" file="FMX.Types.pas" line="1107">
        <parameters>
          <parameter name="ACurrent" type="IControl" paramflags="const"/>
          <parameter name="AMoveForward" type="Boolean" paramflags="const"/>
          <parameter name="AClimb" type="Boolean" paramflags="const"/>
          <retval type="IControl"/>
        </parameters>
      </function>
    </members>
  </class>
  <classref name="TTabListClass" ref="TTabList" file="FMX.Types.pas" line="1109"/>
  <class name="TCustomPopupMenu" file="FMX.Types.pas" line="1113">
    
    <members>
      <field name="FPopupComponent" type="TComponent" visibility="private" size="4" offset="128" file="FMX.Types.pas" line="1115">
        <attributes>
          <attribute name="TObject"/>
        </attributes>
      </field>
      <field name="FOnPopup" type="TNotifyEvent" visibility="private" size="8" offset="136" file="FMX.Types.pas" line="1116"/>
      <procedure name="DoPopup" visibility="protected" procflags="virtual" file="FMX.Types.pas" line="1118">
      <devnotes><summary>
Embarcadero Technologies does not currently have any additional information.


</summary></devnotes></procedure>
      <event name="OnPopup" visibility="protected" read="FOnPopup" write="FOnPopup" type="TNotifyEvent" file="FMX.Types.pas" line="1119"><devnotes><summary>
Occurs just before the pop-up menu appears.
Write an OnPopup event handler to take specific action just before the pop-up menu appears. For example, use an OnPopup event handler to set the Checked, Enabled, or Visible property of individual items in the menu so that they are appropriate to the PopupComponent.
</summary></devnotes></event>
      <procedure name="Popup" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="1121">
        <parameters>
          <parameter name="X" type="Single"/>
          <parameter name="Y" type="Single"/>
        </parameters>
      <devnotes><summary>
Displays the pop-up menu onscreen.
TCustomPopupMenu descendants implement Popup so that it brings up the pop-up menu onscreen. The menu appears at the screen coordinates indicated by the values (in pixels) of X and Y.
</summary></devnotes></procedure>
      <property name="PopupComponent" visibility="public" read="FPopupComponent" write="FPopupComponent" type="TComponent" file="FMX.Types.pas" line="1122"><devnotes><summary>
Specifies the control for which the current object is a context menu.
Set the PopupComponent value to a control so that the current object will be a context menu for that control. The context menu for a control will appear when you right-click that control.
</summary></devnotes></property>
    </members>
  <devnotes><summary>
Represents a pop-up menu attachable to graphical controls that support pop-up menus.
The TTextService virtual abstract class represents a pop-up context menu that can be attached to any FireMonkey graphical control that support pop-up menus, such as TImageControl, TPanel, and so on.
</summary></devnotes></class>
  <enum name="TStandardGesture" file="FMX.Types.pas" line="1125">
    <element value="1" name="sgLeft" file="FMX.Types.pas" line="1126"/>
    <element value="2" name="sgRight" file="FMX.Types.pas" line="1127"/>
    <element value="3" name="sgUp" file="FMX.Types.pas" line="1128"/>
    <element value="4" name="sgDown" file="FMX.Types.pas" line="1129"/>
    <element value="5" name="sgUpLeft" file="FMX.Types.pas" line="1130"/>
    <element value="6" name="sgUpRight" file="FMX.Types.pas" line="1131"/>
    <element value="7" name="sgDownLeft" file="FMX.Types.pas" line="1132"/>
    <element value="8" name="sgDownRight" file="FMX.Types.pas" line="1133"/>
    <element value="9" name="sgLeftUp" file="FMX.Types.pas" line="1134"/>
    <element value="10" name="sgLeftDown" file="FMX.Types.pas" line="1135"/>
    <element value="11" name="sgRightUp" file="FMX.Types.pas" line="1136"/>
    <element value="12" name="sgRightDown" file="FMX.Types.pas" line="1137"/>
    <element value="13" name="sgUpDown" file="FMX.Types.pas" line="1138"/>
    <element value="14" name="sgDownUp" file="FMX.Types.pas" line="1139"/>
    <element value="15" name="sgLeftRight" file="FMX.Types.pas" line="1140"/>
    <element value="16" name="sgRightLeft" file="FMX.Types.pas" line="1141"/>
    <element value="17" name="sgUpLeftLong" file="FMX.Types.pas" line="1142"/>
    <element value="18" name="sgUpRightLong" file="FMX.Types.pas" line="1143"/>
    <element value="19" name="sgDownLeftLong" file="FMX.Types.pas" line="1144"/>
    <element value="20" name="sgDownRightLong" file="FMX.Types.pas" line="1145"/>
    <element value="21" name="sgScratchout" file="FMX.Types.pas" line="1146"/>
    <element value="22" name="sgTriangle" file="FMX.Types.pas" line="1147"/>
    <element value="23" name="sgSquare" file="FMX.Types.pas" line="1148"/>
    <element value="24" name="sgCheck" file="FMX.Types.pas" line="1149"/>
    <element value="25" name="sgCurlicue" file="FMX.Types.pas" line="1150"/>
    <element value="26" name="sgDoubleCurlicue" file="FMX.Types.pas" line="1151"/>
    <element value="27" name="sgCircle" file="FMX.Types.pas" line="1152"/>
    <element value="28" name="sgDoubleCircle" file="FMX.Types.pas" line="1153"/>
    <element value="29" name="sgSemiCircleLeft" file="FMX.Types.pas" line="1154"/>
    <element value="30" name="sgSemiCircleRight" file="FMX.Types.pas" line="1155"/>
    <element value="31" name="sgChevronUp" file="FMX.Types.pas" line="1156"/>
    <element value="32" name="sgChevronDown" file="FMX.Types.pas" line="1157"/>
    <element value="33" name="sgChevronLeft" file="FMX.Types.pas" line="1158"/>
    <element value="34" name="sgChevronRight" file="FMX.Types.pas" line="1159"/>
  </enum>
  <set name="TStandardGestures" type="TStandardGesture" file="FMX.Types.pas" line="1162">
    <element name="sgLeft"/>
    <element name="sgRight"/>
    <element name="sgUp"/>
    <element name="sgDown"/>
    <element name="sgUpLeft"/>
    <element name="sgUpRight"/>
    <element name="sgDownLeft"/>
    <element name="sgDownRight"/>
    <element name="sgLeftUp"/>
    <element name="sgLeftDown"/>
    <element name="sgRightUp"/>
    <element name="sgRightDown"/>
    <element name="sgUpDown"/>
    <element name="sgDownUp"/>
    <element name="sgLeftRight"/>
    <element name="sgRightLeft"/>
    <element name="sgUpLeftLong"/>
    <element name="sgUpRightLong"/>
    <element name="sgDownLeftLong"/>
    <element name="sgDownRightLong"/>
    <element name="sgScratchout"/>
    <element name="sgTriangle"/>
    <element name="sgSquare"/>
    <element name="sgCheck"/>
    <element name="sgCurlicue"/>
    <element name="sgDoubleCurlicue"/>
    <element name="sgCircle"/>
    <element name="sgDoubleCircle"/>
    <element name="sgSemiCircleLeft"/>
    <element name="sgSemiCircleRight"/>
    <element name="sgChevronUp"/>
    <element name="sgChevronDown"/>
    <element name="sgChevronLeft"/>
    <element name="sgChevronRight"/>
  </set>
  <enum name="TInteractiveGesture" file="FMX.Types.pas" line="1164">
    <element value="0" name="Zoom" file="FMX.Types.pas" line="1164"/>
    <element value="1" name="Pan" file="FMX.Types.pas" line="1164"/>
    <element value="2" name="Rotate" file="FMX.Types.pas" line="1164"/>
    <element value="3" name="TwoFingerTap" file="FMX.Types.pas" line="1164"/>
    <element value="4" name="PressAndTap" file="FMX.Types.pas" line="1164"/>
    <element value="5" name="LongTap" file="FMX.Types.pas" line="1164"/>
    <element value="6" name="DoubleTap" file="FMX.Types.pas" line="1164"/>
  </enum>
  <set name="TInteractiveGestures" type="TInteractiveGesture" file="FMX.Types.pas" line="1165">
    <element name="Zoom"/>
    <element name="Pan"/>
    <element name="Rotate"/>
    <element name="TwoFingerTap"/>
    <element name="PressAndTap"/>
    <element name="LongTap"/>
    <element name="DoubleTap"/>
  </set>
  <enum name="TGestureType" file="FMX.Types.pas" line="1171">
    <element value="0" name="Standard" file="FMX.Types.pas" line="1171"/>
    <element value="1" name="Recorded" file="FMX.Types.pas" line="1171"/>
    <element value="2" name="Registered" file="FMX.Types.pas" line="1171"/>
    <element value="3" name="None" file="FMX.Types.pas" line="1171"/>
  </enum>
  <set name="TGestureTypes" type="TGestureType" file="FMX.Types.pas" line="1172">
    <element name="Standard"/>
    <element name="Recorded"/>
    <element name="Registered"/>
    <element name="None"/>
  </set>
  <enum name="TGestureOption" file="FMX.Types.pas" line="1174">
    <element value="0" name="UniDirectional" file="FMX.Types.pas" line="1174"/>
    <element value="1" name="Skew" file="FMX.Types.pas" line="1174"/>
    <element value="2" name="Endpoint" file="FMX.Types.pas" line="1174"/>
    <element value="3" name="Rotate" file="FMX.Types.pas" line="1174"/>
  </enum>
  <set name="TGestureOptions" type="TGestureOption" file="FMX.Types.pas" line="1175">
    <element name="UniDirectional"/>
    <element name="Skew"/>
    <element name="Endpoint"/>
    <element name="Rotate"/>
  </set>
  <array name="TGestureArray" file="FMX.Types.pas" line="1177">
    <element type="TCustomGestureCollectionItem"/>
  </array>
  <array name="TGesturePointArray" file="FMX.Types.pas" line="1178">
    <element type="TPointF"/>
  </array>
  <class name="TCustomGestureCollectionItem" file="FMX.Types.pas" line="1180">
    
    <members>
      <function name="GetAction" visibility="class protected" procflags="abstract virtual" file="FMX.Types.pas" line="1182">
        <parameters>
          <retval type="TCustomAction"/>
        </parameters>
      </function>
      <function name="GetDeviation" visibility="class protected" procflags="abstract virtual" file="FMX.Types.pas" line="1183">
        <parameters>
          <retval type="Integer"/>
        </parameters>
      </function>
      <function name="GetErrorMargin" visibility="class protected" procflags="abstract virtual" file="FMX.Types.pas" line="1184">
        <parameters>
          <retval type="Integer"/>
        </parameters>
      </function>
      <function name="GetGestureID" visibility="class protected" procflags="abstract virtual" file="FMX.Types.pas" line="1185">
        <parameters>
          <retval type="TGestureID"/>
        </parameters>
      </function>
      <function name="GetGestureType" visibility="class protected" procflags="abstract virtual" file="FMX.Types.pas" line="1186">
        <parameters>
          <retval type="TGestureType"/>
        </parameters>
      </function>
      <function name="GetName" visibility="class protected" procflags="abstract virtual" file="FMX.Types.pas" line="1187">
        <parameters>
          <retval type="string"/>
        </parameters>
      </function>
      <function name="GetOptions" visibility="class protected" procflags="abstract virtual" file="FMX.Types.pas" line="1188">
        <parameters>
          <retval type="TGestureOptions"/>
        </parameters>
      </function>
      <function name="GetPoints" visibility="class protected" procflags="abstract virtual" file="FMX.Types.pas" line="1189">
        <parameters>
          <retval type="TGesturePointArray"/>
        </parameters>
      </function>
      <procedure name="SetAction" visibility="class protected" procflags="abstract virtual" file="FMX.Types.pas" line="1190">
        <parameters>
          <parameter name="Value" type="TCustomAction" paramflags="const"/>
        </parameters>
      </procedure>
      <procedure name="SetDeviation" visibility="class protected" procflags="abstract virtual" file="FMX.Types.pas" line="1191">
        <parameters>
          <parameter name="Value" type="Integer" paramflags="const"/>
        </parameters>
      </procedure>
      <procedure name="SetErrorMargin" visibility="class protected" procflags="abstract virtual" file="FMX.Types.pas" line="1192">
        <parameters>
          <parameter name="Value" type="Integer" paramflags="const"/>
        </parameters>
      </procedure>
      <procedure name="SetGestureID" visibility="class protected" procflags="abstract virtual" file="FMX.Types.pas" line="1193">
        <parameters>
          <parameter name="Value" type="TGestureID" paramflags="const"/>
        </parameters>
      </procedure>
      <procedure name="SetName" visibility="class protected" procflags="abstract virtual" file="FMX.Types.pas" line="1194">
        <parameters>
          <parameter name="Value" type="string" paramflags="const"/>
        </parameters>
      </procedure>
      <procedure name="SetOptions" visibility="class protected" procflags="abstract virtual" file="FMX.Types.pas" line="1195">
        <parameters>
          <parameter name="Value" type="TGestureOptions" paramflags="const"/>
        </parameters>
      </procedure>
      <procedure name="SetPoints" visibility="class protected" procflags="abstract virtual" file="FMX.Types.pas" line="1196">
        <parameters>
          <parameter name="Value" type="TGesturePointArray" paramflags="const"/>
        </parameters>
      </procedure>
      <property name="Deviation" visibility="public" read="GetDeviation" write="SetDeviation" type="Integer" default="20" file="FMX.Types.pas" line="1198"/>
      <property name="ErrorMargin" visibility="public" read="GetErrorMargin" write="SetErrorMargin" type="Integer" default="20" file="FMX.Types.pas" line="1199"/>
      <property name="GestureID" visibility="public" read="GetGestureID" write="SetGestureID" type="TGestureID" file="FMX.Types.pas" line="1200"/>
      <property name="GestureType" visibility="public" read="GetGestureType" type="TGestureType" file="FMX.Types.pas" line="1201"/>
      <property name="Name" visibility="public" read="GetName" write="SetName" type="string" default="0" file="FMX.Types.pas" line="1202"/>
      <property name="Points" visibility="public" read="GetPoints" write="SetPoints" type="TGesturePointArray" file="FMX.Types.pas" line="1203"/>
      <property name="Action" visibility="public" read="GetAction" write="SetAction" type="TCustomAction" file="FMX.Types.pas" line="1204"/>
      <property name="Options" visibility="public" read="GetOptions" write="SetOptions" type="TGestureOptions" default="9" file="FMX.Types.pas" line="1205"/>
    </members>
  </class>
  <class name="TCustomGestureCollection" file="FMX.Types.pas" line="1208">
    
    <members>
      <function name="GetGestureManager" visibility="protected" procflags="abstract virtual" file="FMX.Types.pas" line="1210">
        <parameters>
          <retval type="TCustomGestureManager"/>
        </parameters>
      </function>
      <function name="GetItem" visibility="protected" file="FMX.Types.pas" line="1211">
        <parameters>
          <parameter name="Index" type="Integer"/>
          <retval type="TCustomGestureCollectionItem"/>
        </parameters>
      </function>
      <procedure name="SetItem" visibility="protected" file="FMX.Types.pas" line="1212">
        <parameters>
          <parameter name="Index" type="Integer"/>
          <parameter name="Value" type="TCustomGestureCollectionItem" paramflags="const"/>
        </parameters>
      </procedure>
      <function name="AddGesture" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="1214">
        <parameters>
          <retval type="TCustomGestureCollectionItem"/>
        </parameters>
      </function>
      <function name="FindGesture" visibility="public" procflags="abstract overload virtual" file="FMX.Types.pas" line="1215">
        <parameters>
          <parameter name="AGestureID" type="TGestureID"/>
          <retval type="TCustomGestureCollectionItem"/>
        </parameters>
      </function>
      <function name="FindGesture" visibility="public" procflags="abstract overload virtual" file="FMX.Types.pas" line="1216">
        <parameters>
          <parameter name="AName" type="string" paramflags="const"/>
          <retval type="TCustomGestureCollectionItem"/>
        </parameters>
      </function>
      <function name="GetUniqueGestureID" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="1217">
        <parameters>
          <retval type="TGestureID"/>
        </parameters>
      </function>
      <procedure name="RemoveGesture" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="1218">
        <parameters>
          <parameter name="AGestureID" type="TGestureID"/>
        </parameters>
      </procedure>
      <property name="GestureManager" visibility="public" read="GetGestureManager" type="TCustomGestureManager" file="FMX.Types.pas" line="1219"/>
      <property name="Items[Index]" visibility="public" read="GetItem" write="SetItem" type="TCustomGestureCollectionItem" file="FMX.Types.pas" line="1220"/>
    </members>
  </class>
  <class name="TCustomGestureEngine" file="FMX.Types.pas" line="1223">
    
    <members>
      <enum name="TGestureEngineFlag" visibility="public" alias="FMX.Types.TGestureEngineFlag" file="FMX.Types.pas" line="1225">
        <element value="0" name="MouseEvents" file="FMX.Types.pas" line="1225"/>
        <element value="1" name="TouchEvents" file="FMX.Types.pas" line="1225"/>
      </enum>
      <set name="TGestureEngineFlags" visibility="public" alias="FMX.Types.TGestureEngineFlags" type="TCustomGestureEngine.TGestureEngineFlag" file="FMX.Types.pas" line="1226">
        <element name="MouseEvents"/>
        <element name="TouchEvents"/>
      </set>
      <function name="GetActive" visibility="protected" procflags="abstract virtual" file="FMX.Types.pas" line="1228">
        <parameters>
          <retval type="Boolean"/>
        </parameters>
      </function>
      <function name="GetFlags" visibility="protected" procflags="abstract virtual" file="FMX.Types.pas" line="1229">
        <parameters>
          <retval type="TCustomGestureEngine.TGestureEngineFlags"/>
        </parameters>
      </function>
      <procedure name="SetActive" visibility="protected" procflags="abstract virtual" file="FMX.Types.pas" line="1230">
        <parameters>
          <parameter name="Value" type="Boolean" paramflags="const"/>
        </parameters>
      </procedure>
      <constructor name="Create" visibility="public" file="FMX.Types.pas" line="1232">
        <parameters>
          <parameter name="AControl" type="TComponent" paramflags="const"/>
        </parameters>
      </constructor>
      <procedure name="BroadcastGesture" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="1233">
        <parameters>
          <parameter name="AControl" type="TComponent" paramflags="const"/>
          <parameter name="EventInfo" type="TGestureEventInfo"/>
        </parameters>
      </procedure>
      <property name="Active" visibility="public" read="GetActive" write="SetActive" type="Boolean" file="FMX.Types.pas" line="1234"/>
      <property name="Flags" visibility="public" read="GetFlags" type="TCustomGestureEngine.TGestureEngineFlags" file="FMX.Types.pas" line="1235"/>
    </members>
  </class>
  <class name="TCustomGestureManager" file="FMX.Types.pas" line="1238">
    
    <members>
      <function name="GetGestureList" visibility="protected" procflags="abstract virtual" file="FMX.Types.pas" line="1240">
        <parameters>
          <parameter name="AControl" type="TComponent"/>
          <retval type="TGestureArray"/>
        </parameters>
      </function>
      <function name="GetStandardGestures" visibility="protected" procflags="abstract virtual" file="FMX.Types.pas" line="1241">
        <parameters>
          <parameter name="AControl" type="TComponent"/>
          <retval type="TStandardGestures"/>
        </parameters>
      </function>
      <procedure name="SetStandardGestures" visibility="protected" procflags="abstract virtual" file="FMX.Types.pas" line="1242">
        <parameters>
          <parameter name="AControl" type="TComponent"/>
          <parameter name="AStandardGestures" type="TStandardGestures"/>
        </parameters>
      </procedure>
      <function name="AddRecordedGesture" visibility="public" procflags="abstract overload virtual" file="FMX.Types.pas" line="1244">
        <parameters>
          <parameter name="Item" type="TCustomGestureCollectionItem" paramflags="const"/>
          <retval type="TGestureID"/>
        </parameters>
      </function>
      <function name="FindCustomGesture" visibility="public" procflags="abstract overload virtual" file="FMX.Types.pas" line="1245">
        <parameters>
          <parameter name="AGestureID" type="TGestureID"/>
          <retval type="TCustomGestureCollectionItem"/>
        </parameters>
      </function>
      <function name="FindCustomGesture" visibility="public" procflags="abstract overload virtual" file="FMX.Types.pas" line="1246">
        <parameters>
          <parameter name="AName" type="string" paramflags="const"/>
          <retval type="TCustomGestureCollectionItem"/>
        </parameters>
      </function>
      <function name="FindGesture" visibility="public" procflags="abstract overload virtual" file="FMX.Types.pas" line="1247">
        <parameters>
          <parameter name="AControl" type="TComponent" paramflags="const"/>
          <parameter name="AGestureID" type="TGestureID"/>
          <retval type="TCustomGestureCollectionItem"/>
        </parameters>
      </function>
      <function name="FindGesture" visibility="public" procflags="abstract overload virtual" file="FMX.Types.pas" line="1248">
        <parameters>
          <parameter name="AControl" type="TComponent" paramflags="const"/>
          <parameter name="AName" type="string" paramflags="const"/>
          <retval type="TCustomGestureCollectionItem"/>
        </parameters>
      </function>
      <procedure name="RemoveActionNotification" visibility="public" procflags="virtual" file="FMX.Types.pas" line="1249">
        <parameters>
          <parameter name="Action" type="TCustomAction"/>
          <parameter name="Item" type="TCustomGestureCollectionItem"/>
        </parameters>
      </procedure>
      <procedure name="RegisterControl" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="1250">
        <parameters>
          <parameter name="AControl" type="TComponent" paramflags="const"/>
        </parameters>
      </procedure>
      <procedure name="RemoveRecordedGesture" visibility="public" procflags="abstract overload virtual" file="FMX.Types.pas" line="1251">
        <parameters>
          <parameter name="AGestureID" type="TGestureID"/>
        </parameters>
      </procedure>
      <procedure name="RemoveRecordedGesture" visibility="public" procflags="abstract overload virtual" file="FMX.Types.pas" line="1252">
        <parameters>
          <parameter name="AGesture" type="TCustomGestureCollectionItem" paramflags="const"/>
        </parameters>
      </procedure>
      <function name="SelectGesture" visibility="public" procflags="abstract overload virtual" file="FMX.Types.pas" line="1253">
        <parameters>
          <parameter name="AControl" type="TComponent" paramflags="const"/>
          <parameter name="AGestureID" type="TGestureID"/>
          <retval type="Boolean"/>
        </parameters>
      </function>
      <function name="SelectGesture" visibility="public" procflags="abstract overload virtual" file="FMX.Types.pas" line="1254">
        <parameters>
          <parameter name="AControl" type="TComponent" paramflags="const"/>
          <parameter name="AName" type="string" paramflags="const"/>
          <retval type="Boolean"/>
        </parameters>
      </function>
      <procedure name="UnregisterControl" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="1255">
        <parameters>
          <parameter name="AControl" type="TComponent" paramflags="const"/>
        </parameters>
      </procedure>
      <procedure name="UnselectGesture" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="1256">
        <parameters>
          <parameter name="AControl" type="TComponent" paramflags="const"/>
          <parameter name="AGestureID" type="TGestureID"/>
        </parameters>
      </procedure>
      <property name="GestureList[AControl]" visibility="public" read="GetGestureList" type="TGestureArray" file="FMX.Types.pas" line="1257"/>
      <property name="StandardGestures[AControl]" visibility="public" read="GetStandardGestures" write="SetStandardGestures" type="TStandardGestures" file="FMX.Types.pas" line="1258"/>
    </members>
  </class>
  <class name="TCustomTouchManager" file="FMX.Types.pas" line="1261">
    
    <members>
      <class name="TObjectWrapper" visibility="private" alias="FMX.Types.TObjectWrapper" file="FMX.Types.pas" line="1264">
        
        <members>
          <field name="FObject" type="TComponent" visibility="public" size="4" offset="4" file="FMX.Types.pas" line="1265">
            <attributes>
              <attribute name="TObject"/>
            </attributes>
          </field>
          <constructor name="Create" visibility="public" file="FMX.Types.pas" line="1266">
            <parameters>
              <parameter name="AObject" type="TComponent" paramflags="const"/>
            </parameters>
          </constructor>
        </members>
      </class>
      <field name="FControl" type="TComponent" visibility="private" size="4" offset="4" file="FMX.Types.pas" line="1269">
        <attributes>
          <attribute name="TObject"/>
        </attributes>
      </field>
      <field name="FGestureEngine" type="TCustomGestureEngine" visibility="private" size="4" offset="8" file="FMX.Types.pas" line="1270"/>
      <field name="FGestureManager" type="TCustomGestureManager" visibility="private" size="4" offset="12" file="FMX.Types.pas" line="1271"/>
      <field name="FInteractiveGestures" type="TInteractiveGestures" visibility="private" size="1" offset="16" file="FMX.Types.pas" line="1272"/>
      <field name="FDefaultInteractiveGestures" type="TInteractiveGestures" visibility="private" size="1" offset="17" file="FMX.Types.pas" line="1273"/>
      <field name="FStandardGestures" type="TStandardGestures" visibility="private" size="5" offset="18" file="FMX.Types.pas" line="1274"/>
      <function name="GetStandardGestures" visibility="private" file="FMX.Types.pas" line="1275">
        <parameters>
          <retval type="TStandardGestures"/>
        </parameters>
      </function>
      <function name="IsInteractiveGesturesStored" visibility="private" file="FMX.Types.pas" line="1276">
        <parameters>
          <retval type="Boolean"/>
        </parameters>
      </function>
      <procedure name="SetInteractiveGestures" visibility="private" file="FMX.Types.pas" line="1277">
        <parameters>
          <parameter name="Value" type="TInteractiveGestures" paramflags="const"/>
        </parameters>
      </procedure>
      <procedure name="SetGestureEngine" visibility="private" file="FMX.Types.pas" line="1278">
        <parameters>
          <parameter name="Value" type="TCustomGestureEngine" paramflags="const"/>
        </parameters>
      </procedure>
      <procedure name="SetGestureManager" visibility="private" file="FMX.Types.pas" line="1279">
        <parameters>
          <parameter name="Value" type="TCustomGestureManager" paramflags="const"/>
        </parameters>
      </procedure>
      <procedure name="SetStandardGestures" visibility="private" file="FMX.Types.pas" line="1280">
        <parameters>
          <parameter name="Value" type="TStandardGestures" paramflags="const"/>
        </parameters>
      </procedure>
      <function name="GetGestureList" visibility="private" file="FMX.Types.pas" line="1281">
        <parameters>
          <retval type="TGestureArray"/>
        </parameters>
      </function>
      <procedure name="AssignTo" visibility="protected" procflags="override" file="FMX.Types.pas" line="1283">
        <parameters>
          <parameter name="Dest" type="TPersistent"/>
        </parameters>
      </procedure>
      <function name="IsDefault" visibility="protected" file="FMX.Types.pas" line="1284">
        <parameters>
          <retval type="Boolean"/>
        </parameters>
      </function>
      <constructor name="Create" visibility="public" file="FMX.Types.pas" line="1286">
        <parameters>
          <parameter name="AControl" type="TComponent"/>
        </parameters>
      </constructor>
      <destructor name="Destroy" visibility="public" file="FMX.Types.pas" line="1287">
        <parameters>
        </parameters>
      </destructor>
      <procedure name="ChangeNotification" visibility="public" file="FMX.Types.pas" line="1288">
        <parameters>
          <parameter name="AControl" type="TComponent" paramflags="const"/>
        </parameters>
      </procedure>
      <function name="FindGesture" visibility="public" procflags="overload" file="FMX.Types.pas" line="1289">
        <parameters>
          <parameter name="AGestureID" type="TGestureID"/>
          <retval type="TCustomGestureCollectionItem"/>
        </parameters>
      </function>
      <function name="FindGesture" visibility="public" procflags="overload" file="FMX.Types.pas" line="1290">
        <parameters>
          <parameter name="AName" type="string" paramflags="const"/>
          <retval type="TCustomGestureCollectionItem"/>
        </parameters>
      </function>
      <procedure name="RemoveChangeNotification" visibility="public" file="FMX.Types.pas" line="1291">
        <parameters>
          <parameter name="AControl" type="TComponent" paramflags="const"/>
        </parameters>
      </procedure>
      <function name="SelectGesture" visibility="public" procflags="overload" file="FMX.Types.pas" line="1292">
        <parameters>
          <parameter name="AGestureID" type="TGestureID"/>
          <retval type="Boolean"/>
        </parameters>
      </function>
      <function name="SelectGesture" visibility="public" procflags="overload" file="FMX.Types.pas" line="1293">
        <parameters>
          <parameter name="AName" type="string" paramflags="const"/>
          <retval type="Boolean"/>
        </parameters>
      </function>
      <procedure name="UnselectGesture" visibility="public" procflags="inline" file="FMX.Types.pas" line="1294">
        <parameters>
          <parameter name="AGestureID" type="TGestureID"/>
        </parameters>
      </procedure>
      <property name="GestureEngine" visibility="public" read="FGestureEngine" write="SetGestureEngine" type="TCustomGestureEngine" file="FMX.Types.pas" line="1295"/>
      <property name="GestureList" visibility="public" read="GetGestureList" type="TGestureArray" file="FMX.Types.pas" line="1296"/>
      <property name="GestureManager" visibility="public" read="FGestureManager" write="SetGestureManager" type="TCustomGestureManager" file="FMX.Types.pas" line="1297"/>
      <property name="InteractiveGestures" visibility="public" read="FInteractiveGestures" write="SetInteractiveGestures" stored="IsInteractiveGesturesStored" type="TInteractiveGestures" file="FMX.Types.pas" line="1298"/>
      <property name="DefaultInteractiveGestures" visibility="public" read="FDefaultInteractiveGestures" write="FDefaultInteractiveGestures" type="TInteractiveGestures" file="FMX.Types.pas" line="1300"/>
      <property name="StandardGestures" visibility="public" read="GetStandardGestures" write="SetStandardGestures" type="TStandardGestures" file="FMX.Types.pas" line="1302"/>
    </members>
  </class>
  <class name="TTouchManager" file="FMX.Types.pas" line="1305">
    
    <members>
      <property name="GestureManager" visibility="published" read="FGestureManager" write="SetGestureManager" type="TCustomGestureManager" hoisted="true" file="FMX.Types.pas" line="1307"/>
      <property name="InteractiveGestures" visibility="published" read="FInteractiveGestures" write="SetInteractiveGestures" stored="IsInteractiveGesturesStored" type="TInteractiveGestures" hoisted="true" file="FMX.Types.pas" line="1308"/>
    </members>
  </class>
  <interface name="IGestureControl" GUID="{A263006D-3472-40F8-A917-F2221B48A459}" ancestor="IInterface" file="FMX.Types.pas" line="1311">
    <procedure name="BroadcastGesture" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="1313">
      <parameters>
        <parameter name="EventInfo" type="TGestureEventInfo"/>
      </parameters>
    </procedure>
    <procedure name="CMGesture" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="1314">
      <parameters>
        <parameter name="EventInfo" type="TGestureEventInfo" paramflags="var"/>
      </parameters>
    </procedure>
    <function name="TouchManager" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="1315">
      <parameters>
        <retval type="TTouchManager"/>
      </parameters>
    </function>
    <function name="GetFirstControlWithGesture" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="1316">
      <parameters>
        <parameter name="AGesture" type="TInteractiveGesture"/>
        <retval type="TComponent"/>
      </parameters>
    </function>
    <function name="GetFirstControlWithGestureEngine" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="1317">
      <parameters>
        <retval type="TComponent"/>
      </parameters>
    </function>
    <function name="GetListOfInteractiveGestures" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="1318">
      <parameters>
        <retval type="TInteractiveGestures"/>
      </parameters>
    </function>
    <procedure name="Tap" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="1319">
      <parameters>
        <parameter name="Point" type="TPointF" paramflags="const"/>
      </parameters>
    </procedure>
  </interface>
  <interface name="IMultiTouch" GUID="{A263006D-3472-40F8-A917-F2221B48ABDD}" ancestor="IInterface" file="FMX.Types.pas" line="1322">
    <procedure name="MultiTouch" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="1324">
      <parameters>
        <parameter name="Touches" type="TTouches" paramflags="const"/>
        <parameter name="Action" type="TTouchAction" paramflags="const"/>
      </parameters>
    </procedure>
  </interface>
  <interface name="ISizeGrip" GUID="{181729B7-53B2-45EA-97C7-91E1F3CBAABE}" ancestor="IInterface" file="FMX.Types.pas" line="1327">
  </interface>
  <class name="TLang" file="FMX.Types.pas" line="1333">
    
    <members>
      <field name="FLang" type="string" visibility="private" size="4" offset="128" file="FMX.Types.pas" line="1335"/>
      <field name="FResources" type="TStrings" visibility="private" size="4" offset="132" file="FMX.Types.pas" line="1336"/>
      <field name="FOriginal" type="TStrings" visibility="private" size="4" offset="136" file="FMX.Types.pas" line="1337"/>
      <field name="FAutoSelect" type="Boolean" visibility="private" size="1" offset="140" file="FMX.Types.pas" line="1338"/>
      <field name="FFileName" type="string" visibility="private" size="4" offset="144" file="FMX.Types.pas" line="1339"/>
      <field name="FStoreInForm" type="Boolean" visibility="private" size="1" offset="148" file="FMX.Types.pas" line="1340"/>
      <procedure name="SetLang" visibility="private" file="FMX.Types.pas" line="1341">
        <parameters>
          <parameter name="Value" type="string" paramflags="const"/>
        </parameters>
      </procedure>
      <function name="GetLangStr" visibility="private" file="FMX.Types.pas" line="1342">
        <parameters>
          <parameter name="Index" type="string" paramflags="const"/>
          <retval type="TStrings"/>
        </parameters>
      </function>
      <procedure name="DefineProperties" visibility="protected" procflags="override" file="FMX.Types.pas" line="1345">
        <parameters>
          <parameter name="Filer" type="TFiler"/>
        </parameters>
      </procedure>
      <procedure name="ReadResources" visibility="protected" file="FMX.Types.pas" line="1346">
        <parameters>
          <parameter name="Stream" type="TStream"/>
        </parameters>
      </procedure>
      <procedure name="WriteResources" visibility="protected" file="FMX.Types.pas" line="1347">
        <parameters>
          <parameter name="Stream" type="TStream"/>
        </parameters>
      </procedure>
      <procedure name="Loaded" visibility="protected" procflags="override" file="FMX.Types.pas" line="1348">
      </procedure>
      <constructor name="Create" visibility="public" file="FMX.Types.pas" line="1350">
        <parameters>
          <parameter name="AOwner" type="TComponent"/>
        </parameters>
      </constructor>
      <destructor name="Destroy" visibility="public" file="FMX.Types.pas" line="1351">
        <parameters>
        </parameters>
      </destructor>
      <procedure name="AddLang" visibility="public" file="FMX.Types.pas" line="1352">
        <parameters>
          <parameter name="AName" type="string" paramflags="const"/>
        </parameters>
      </procedure>
      <procedure name="LoadFromFile" visibility="public" file="FMX.Types.pas" line="1353">
        <parameters>
          <parameter name="AFileName" type="string" paramflags="const"/>
        </parameters>
      </procedure>
      <procedure name="SaveToFile" visibility="public" file="FMX.Types.pas" line="1354">
        <parameters>
          <parameter name="AFileName" type="string" paramflags="const"/>
        </parameters>
      </procedure>
      <property name="Original" visibility="public" read="FOriginal" type="TStrings" file="FMX.Types.pas" line="1355"/>
      <property name="Resources" visibility="public" read="FResources" type="TStrings" file="FMX.Types.pas" line="1356"/>
      <property name="LangStr[const Index]" visibility="public" read="GetLangStr" type="TStrings" file="FMX.Types.pas" line="1357"/>
      <property name="AutoSelect" visibility="published" read="FAutoSelect" write="FAutoSelect" type="Boolean" default="1" file="FMX.Types.pas" line="1359"/>
      <property name="FileName" visibility="published" read="FFileName" write="FFileName" type="string" default="0" file="FMX.Types.pas" line="1360"/>
      <property name="StoreInForm" visibility="published" read="FStoreInForm" write="FStoreInForm" type="Boolean" default="1" file="FMX.Types.pas" line="1361"/>
      <property name="Lang" visibility="published" read="FLang" write="SetLang" type="string" default="0" file="FMX.Types.pas" line="1362"/>
    </members>
  </class>
  <type name="TTimerProc" file="FMX.Types.pas" line="1367" procflags="closure">
  </type>
  <interface name="IFMXTimerService" GUID="{856E938B-FF7B-4E13-85D4-3414A6A9FF2F}" ancestor="IInterface" file="FMX.Types.pas" line="1369">
    <function name="CreateTimer" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="1371">
      <parameters>
        <parameter name="Interval" type="Integer"/>
        <parameter name="TimerFunc" type="TTimerProc"/>
        <retval type="NativeUInt"/>
      </parameters>
    </function>
    <function name="DestroyTimer" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="1372">
      <parameters>
        <parameter name="Timer" type="NativeUInt"/>
        <retval type="Boolean"/>
      </parameters>
    </function>
    <function name="GetTick" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="1373">
      <parameters>
        <retval type="Double"/>
      </parameters>
    </function>
  </interface>
  <class name="TTimer" file="FMX.Types.pas" line="1376">
    
    <members>
      <field name="FInterval" type="Cardinal" visibility="private" size="4" offset="128" file="FMX.Types.pas" line="1378"/>
      <field name="FTimerHandle" type="NativeUInt" visibility="private" size="4" offset="132" file="FMX.Types.pas" line="1379"/>
      <field name="FOnTimer" type="TNotifyEvent" visibility="private" size="8" offset="136" file="FMX.Types.pas" line="1380"/>
      <field name="FEnabled" type="Boolean" visibility="private" size="1" offset="144" file="FMX.Types.pas" line="1381"/>
      <field name="FPlatformTimer" type="IFMXTimerService" visibility="private" size="4" offset="148" file="FMX.Types.pas" line="1382"/>
      <procedure name="Timer" visibility="private" file="FMX.Types.pas" line="1383">
      </procedure>
      <procedure name="SetEnabled" visibility="protected" procflags="virtual" file="FMX.Types.pas" line="1385">
        <parameters>
          <parameter name="Value" type="Boolean"/>
        </parameters>
      </procedure>
      <procedure name="SetInterval" visibility="protected" procflags="virtual" file="FMX.Types.pas" line="1386">
        <parameters>
          <parameter name="Value" type="Cardinal"/>
        </parameters>
      </procedure>
      <procedure name="SetOnTimer" visibility="protected" procflags="virtual" file="FMX.Types.pas" line="1387">
        <parameters>
          <parameter name="Value" type="TNotifyEvent"/>
        </parameters>
      </procedure>
      <procedure name="DoOnTimer" visibility="protected" procflags="virtual" file="FMX.Types.pas" line="1388">
      </procedure>
      <procedure name="UpdateTimer" visibility="protected" procflags="virtual" file="FMX.Types.pas" line="1389">
      </procedure>
      <procedure name="KillTimer" visibility="protected" procflags="virtual" file="FMX.Types.pas" line="1390">
      </procedure>
      <procedure name="Loaded" visibility="protected" procflags="override" file="FMX.Types.pas" line="1391">
      </procedure>
      <constructor name="Create" visibility="public" file="FMX.Types.pas" line="1393">
        <parameters>
          <parameter name="AOwner" type="TComponent"/>
        </parameters>
      </constructor>
      <destructor name="Destroy" visibility="public" file="FMX.Types.pas" line="1394">
        <parameters>
        </parameters>
      </destructor>
      <property name="Enabled" visibility="published" read="FEnabled" write="SetEnabled" type="Boolean" default="1" file="FMX.Types.pas" line="1396"/>
      <property name="Interval" visibility="published" read="FInterval" write="SetInterval" type="Cardinal" default="1000" file="FMX.Types.pas" line="1397"/>
      <event name="OnTimer" visibility="published" read="FOnTimer" write="SetOnTimer" type="TNotifyEvent" file="FMX.Types.pas" line="1398"/>
    </members>
  </class>
  <pointer name="PLineMetric" type="TLineMetric" indircnt="1" file="FMX.Types.pas" line="1403"/>
  <struct name="TLineMetric" size="8" file="FMX.Types.pas" line="1404">
    <field name="Index" type="Integer" visibility="public" size="4" offset="0" file="FMX.Types.pas" line="1405"/>
    <field name="Len" type="Integer" visibility="public" size="4" offset="4" file="FMX.Types.pas" line="1406"/>
  </struct>
  <class name="TLineMetricInfo" file="FMX.Types.pas" line="1409">
    
    <members>
      <field name="FLineMetrics" type=":TLineMetricInfo.:1" visibility="protected" size="4" offset="4" file="FMX.Types.pas" line="1411"/>
      <function name="GetCount" visibility="protected" procflags="virtual" file="FMX.Types.pas" line="1412">
        <parameters>
          <retval type="Integer"/>
        </parameters>
      </function>
      <function name="GetMetrics" visibility="protected" procflags="virtual" file="FMX.Types.pas" line="1413">
        <parameters>
          <parameter name="Index" type="Integer"/>
          <retval type="PLineMetric"/>
        </parameters>
      </function>
      <procedure name="SetCount" visibility="protected" procflags="virtual" file="FMX.Types.pas" line="1414">
        <parameters>
          <parameter name="Value" type="Integer" paramflags="const"/>
        </parameters>
      </procedure>
      <constructor name="Create" visibility="public" file="FMX.Types.pas" line="1416">
        <parameters>
        </parameters>
      </constructor>
      <destructor name="Destroy" visibility="public" file="FMX.Types.pas" line="1417">
        <parameters>
        </parameters>
      </destructor>
      <procedure name="Clear" visibility="public" procflags="virtual" file="FMX.Types.pas" line="1418">
      </procedure>
      <property name="Count" visibility="public" read="GetCount" write="SetCount" type="Integer" file="FMX.Types.pas" line="1419"/>
      <property name="Metrics[ind]" visibility="public" read="GetMetrics" type="PLineMetric" file="FMX.Types.pas" line="1420"/>
    </members>
  </class>
  <enum name="TFreeChoiceHeuristic" file="FMX.Types.pas" line="1425">
    <element value="0" name="BestAreaFit" file="FMX.Types.pas" line="1425"/>
    <element value="1" name="BestShortSideFit" file="FMX.Types.pas" line="1425"/>
    <element value="2" name="BestLongSideFit" file="FMX.Types.pas" line="1425"/>
    <element value="3" name="WorstAreaFit" file="FMX.Types.pas" line="1425"/>
    <element value="4" name="WorstShortSideFit" file="FMX.Types.pas" line="1425"/>
    <element value="5" name="WorstLongSideFit" file="FMX.Types.pas" line="1426"/>
  </enum>
  <enum name="TSplitMethodHeuristic" file="FMX.Types.pas" line="1428">
    <element value="0" name="ShorterLeftoverAxis" file="FMX.Types.pas" line="1428"/>
    <element value="1" name="LongerLeftoverAxis" file="FMX.Types.pas" line="1428"/>
    <element value="2" name="MinimizeArea" file="FMX.Types.pas" line="1428"/>
    <element value="3" name="MaximizeArea" file="FMX.Types.pas" line="1428"/>
    <element value="4" name="ShorterAxis" file="FMX.Types.pas" line="1428"/>
    <element value="5" name="LongerAxis" file="FMX.Types.pas" line="1429"/>
  </enum>
  <class name="TGuillotineBinPack" file="FMX.Types.pas" line="1431">
    
    <members>
      <field name="FSize" type="TPoint" visibility="private" size="8" offset="4" file="FMX.Types.pas" line="1433"/>
      <field name="FUsedRectangles" type="TList&lt;System.Types.TRect&gt;" visibility="private" size="4" offset="12" file="FMX.Types.pas" line="1434"/>
      <field name="FFreeRectangles" type="TList&lt;System.Types.TRect&gt;" visibility="private" size="4" offset="16" file="FMX.Types.pas" line="1435"/>
      <field name="FSupportsRectangleInversion" type="Boolean" visibility="private" size="1" offset="20" file="FMX.Types.pas" line="1436"/>
      <field name="FUsedRectangleArea" type="Integer" visibility="private" size="4" offset="24" file="FMX.Types.pas" line="1437"/>
      <function name="ScoreByHeuristic" visibility="private" file="FMX.Types.pas" line="1439">
        <parameters>
          <parameter name="NodeSize" type="TPoint" paramflags="const"/>
          <parameter name="FreeRect" type="TRect" paramflags="const"/>
          <parameter name="Heuristic" type="TFreeChoiceHeuristic" paramflags="const"/>
          <retval type="Integer"/>
        </parameters>
      </function>
      <procedure name="FindPositionForNewNode" visibility="private" file="FMX.Types.pas" line="1442">
        <parameters>
          <parameter name="NodeSize" type="TPoint" paramflags="const"/>
          <parameter name="Heuristic" type="TFreeChoiceHeuristic" paramflags="const"/>
          <parameter name="NodeIndex" type="Integer" paramflags="out"/>
          <parameter name="NodeRect" type="TRect" paramflags="out"/>
        </parameters>
      </procedure>
      <procedure name="SplitFreeRectAlongAxis" visibility="private" file="FMX.Types.pas" line="1445">
        <parameters>
          <parameter name="FreeRect" type="TRect" paramflags="const"/>
          <parameter name="PlacedRect" type="TRect" paramflags="const"/>
          <parameter name="SplitHorizontal" type="Boolean" paramflags="const"/>
        </parameters>
      </procedure>
      <procedure name="SplitFreeRectByHeuristic" visibility="private" file="FMX.Types.pas" line="1446">
        <parameters>
          <parameter name="FreeRect" type="TRect" paramflags="const"/>
          <parameter name="PlacedRect" type="TRect" paramflags="const"/>
          <parameter name="AMethod" type="TSplitMethodHeuristic" paramflags="const"/>
        </parameters>
      </procedure>
      <function name="GetOccupancy" visibility="private" file="FMX.Types.pas" line="1448">
        <devnotes>
           Computes the ratio of used surface area to the total bin area.
        </devnotes>
        <parameters>
          <retval type="Single"/>
        </parameters>
      </function>
      <constructor name="Create" visibility="public" file="FMX.Types.pas" line="1450">
        <parameters>
        </parameters>
      </constructor>
      <constructor name="Create" visibility="public" file="FMX.Types.pas" line="1451">
        <parameters>
          <parameter name="ASize" type="TPoint" paramflags="const"/>
        </parameters>
      </constructor>
      <destructor name="Destroy" visibility="public" file="FMX.Types.pas" line="1452">
        <parameters>
        </parameters>
      </destructor>
      <procedure name="Init" visibility="public" file="FMX.Types.pas" line="1454">
        <parameters>
          <parameter name="ASize" type="TPoint" paramflags="const"/>
        </parameters>
      </procedure>
      <procedure name="MergeFreeList" visibility="public" file="FMX.Types.pas" line="1455">
      </procedure>
      <function name="Insert" visibility="public" file="FMX.Types.pas" line="1457">
        <parameters>
          <parameter name="NodeSize" type="TPoint" paramflags="const"/>
          <parameter name="Merge" type="Boolean" paramflags="const">
            <value>
              True
            </value>
          </parameter>
          <parameter name="FreeChoice" type="TFreeChoiceHeuristic" paramflags="const">
            <value>
              BestAreaFit
            </value>
          </parameter>
          <parameter name="SplitMethod" type="TSplitMethodHeuristic" paramflags="const">
            <value>
              MinimizeArea
            </value>
          </parameter>
          <retval type="TRect"/>
        </parameters>
      </function>
      <property name="Size" visibility="public" read="FSize" type="TPoint" file="FMX.Types.pas" line="1461"/>
      <property name="Occupancy" visibility="public" read="GetOccupancy" type="Single" default="0" file="FMX.Types.pas" line="1462"/>
      <property name="SupportsRectangleInversion" visibility="public" read="FSupportsRectangleInversion" write="FSupportsRectangleInversion" type="Boolean" file="FMX.Types.pas" line="1463"/>
    </members>
  </class>
  <class name="EGraphicsException" file="FMX.Types.pas" line="1466">
    
  </class>
  <class name="ECannotDetermineDirect3DLevel" file="FMX.Types.pas" line="1467">
    
  </class>
  <class name="ECannotCreateD3DDevice" file="FMX.Types.pas" line="1468">
    
  </class>
  <class name="ECannotCreateD2DFactory" file="FMX.Types.pas" line="1469">
    
  </class>
  <class name="ECannotCreateDWriteFactory" file="FMX.Types.pas" line="1470">
    
  </class>
  <class name="ECannotCreateWICImagingFactory" file="FMX.Types.pas" line="1471">
    
  </class>
  <class name="ECannotCreateRenderTarget" file="FMX.Types.pas" line="1472">
    
  </class>
  <class name="ECannotCreateTexture" file="FMX.Types.pas" line="1473">
    
  </class>
  <class name="ECannotCreateSwapChain" file="FMX.Types.pas" line="1474">
    
  </class>
  <class name="ERetrieveSurfaceContents" file="FMX.Types.pas" line="1475">
    
  </class>
  <class name="ECannotCreateRenderTargetView" file="FMX.Types.pas" line="1476">
    
  </class>
  <class name="ECannotResizeBuffers" file="FMX.Types.pas" line="1477">
    
  </class>
  <class name="EBitmapSizeTooBig" file="FMX.Types.pas" line="1478">
    
  </class>
  <class name="EBitmapLoadingFailed" file="FMX.Types.pas" line="1479">
    
  </class>
  <class name="EThumbnailLoadingFailed" file="FMX.Types.pas" line="1480">
    
  </class>
  <class name="EBitmapSavingFailed" file="FMX.Types.pas" line="1481">
    
  </class>
  <class name="EBitmapFormatUnsupported" file="FMX.Types.pas" line="1482">
    
  </class>
  <class name="EBitmapIncorrectSize" file="FMX.Types.pas" line="1483">
    
  </class>
  <class name="ERetrieveSurfaceDescription" file="FMX.Types.pas" line="1484">
    
  </class>
  <class name="EAcquireBitmapAccess" file="FMX.Types.pas" line="1485">
    
  </class>
  <class name="EVideoCaptureFault" file="FMX.Types.pas" line="1486">
    
  </class>
  <class name="EInvalidCallingConditions" file="FMX.Types.pas" line="1487">
    
  </class>
  <class name="EInvalidRenderingConditions" file="FMX.Types.pas" line="1488">
    
  </class>
  <class name="ETextureSizeTooSmall" file="FMX.Types.pas" line="1489">
    
  </class>
  <class name="ECannotAcquireBitmapAccess" file="FMX.Types.pas" line="1490">
    
  </class>
  <class name="ECannotFindSuitablePixelFormat" file="FMX.Types.pas" line="1491">
    
  </class>
  <class name="ECannotFindShader" file="FMX.Types.pas" line="1492">
    
  </class>
  <class name="ECannotCreateDirect3D" file="FMX.Types.pas" line="1493">
    
  </class>
  <class name="ECannotAcquireDXGIFactory" file="FMX.Types.pas" line="1494">
    
  </class>
  <class name="ECannotAssociateWindowHandle" file="FMX.Types.pas" line="1495">
    
  </class>
  <class name="ECannotRetrieveDisplayMode" file="FMX.Types.pas" line="1496">
    
  </class>
  <class name="ECannotRetrieveBufferDesc" file="FMX.Types.pas" line="1497">
    
  </class>
  <class name="ECannotCreateSamplerState" file="FMX.Types.pas" line="1498">
    
  </class>
  <class name="ECannotRetrieveSurface" file="FMX.Types.pas" line="1499">
    
  </class>
  <class name="ECannotUploadTexture" file="FMX.Types.pas" line="1500">
    
  </class>
  <class name="ECannotActivateTexture" file="FMX.Types.pas" line="1501">
    
  </class>
  <class name="ECannotAcquireTextureAccess" file="FMX.Types.pas" line="1502">
    
  </class>
  <class name="ECannotCopyTextureResource" file="FMX.Types.pas" line="1503">
    
  </class>
  <class name="ECannotActivateFrameBuffers" file="FMX.Types.pas" line="1504">
    
  </class>
  <class name="ECannotCreateRenderBuffers" file="FMX.Types.pas" line="1505">
    
  </class>
  <class name="ECannotRetrieveRenderBuffers" file="FMX.Types.pas" line="1506">
    
  </class>
  <class name="ECannotActivateRenderBuffers" file="FMX.Types.pas" line="1507">
    
  </class>
  <class name="ECannotBeginRenderingScene" file="FMX.Types.pas" line="1508">
    
  </class>
  <class name="ECannotSyncDeviceBuffers" file="FMX.Types.pas" line="1509">
    
  </class>
  <class name="ECannotUploadDeviceBuffers" file="FMX.Types.pas" line="1510">
    
  </class>
  <class name="ECannotCreateDepthStencil" file="FMX.Types.pas" line="1511">
    
  </class>
  <class name="ECannotRetrieveDepthStencil" file="FMX.Types.pas" line="1512">
    
  </class>
  <class name="ECannotActivateDepthStencil" file="FMX.Types.pas" line="1513">
    
  </class>
  <class name="ECannotResizeSwapChain" file="FMX.Types.pas" line="1514">
    
  </class>
  <class name="ECannotActivateSwapChain" file="FMX.Types.pas" line="1515">
    
  </class>
  <class name="ECannotCreateVertexShader" file="FMX.Types.pas" line="1516">
    
  </class>
  <class name="ECannotCreatePixelShader" file="FMX.Types.pas" line="1517">
    
  </class>
  <class name="ECannotCreateVertexLayout" file="FMX.Types.pas" line="1518">
    
  </class>
  <class name="ECannotCreateVertexDeclaration" file="FMX.Types.pas" line="1519">
    
  </class>
  <class name="ECannotCreateVertexBuffer" file="FMX.Types.pas" line="1520">
    
  </class>
  <class name="ECannotCreateIndexBuffer" file="FMX.Types.pas" line="1521">
    
  </class>
  <class name="EShaderCompilationError" file="FMX.Types.pas" line="1522">
    
  </class>
  <class name="EProgramCompilationError" file="FMX.Types.pas" line="1523">
    
  </class>
  <class name="ECannotFindShaderVariable" file="FMX.Types.pas" line="1524">
    
  </class>
  <class name="ECannotActivateShaderProgram" file="FMX.Types.pas" line="1525">
    
  </class>
  <class name="ECannotCreateOpenGLContext" file="FMX.Types.pas" line="1526">
    
  </class>
  <class name="ECannotUpdateOpenGLContext" file="FMX.Types.pas" line="1527">
    
  </class>
  <class name="ECannotDrawMeshObject" file="FMX.Types.pas" line="1528">
    
  </class>
  <class name="EFeatureNotSupported" file="FMX.Types.pas" line="1529">
    
  </class>
  <class name="EErrorCompressingStream" file="FMX.Types.pas" line="1530">
    
  </class>
  <class name="EErrorDecompressingStream" file="FMX.Types.pas" line="1531">
    
  </class>
  <class name="EErrorUnpackingShaderCode" file="FMX.Types.pas" line="1532">
    
  </class>
  <interface name="IPersistentProvider" GUID="{B0B03758-A2F5-49B9-9A39-C2C2405B2EAD}" ancestor="IInterface" file="FMX.Types.pas" line="1537">
    <devnotes>
      <summary>Provider a persistent object for the designer. A different TPersistent can be routed into the
       designer using this interface. This can be used to expose properties of non-controls in the
       Object Inspector.</summary>
    </devnotes>
    <function name="GetPersistent" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="1540">
      <devnotes>
        <summary>Return the provided persistent</summary>
      </devnotes>
      <parameters>
        <retval type="TPersistent"/>
      </parameters>
    </function>
  </interface>
  <interface name="IPersistentShim" GUID="{B6F815C7-BFD1-489D-A661-0CD4639EC920}" ancestor="IInterface" file="FMX.Types.pas" line="1546">
    <devnotes>
      <summary>Shim is a representative of a visual non-control object in the Designer. The shim needs to implement
       this interface in order to let the Designer know about its bounding rectangles.
      </summary>
    </devnotes>
    <function name="GetBoundsRect" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="1549">
      <devnotes>
        <summary>Return bounding rectangle of shim.</summary>
      </devnotes>
      <parameters>
        <retval type="TRect"/>
      </parameters>
    </function>
  </interface>
  <interface name="IDesignablePersistent" GUID="{4A731994-9060-4F3C-92D7-C123B04601D4}" ancestor="IInterface" file="FMX.Types.pas" line="1553">
    <devnotes>
      <summary>Extension of TPersistent directly exposed to the Designer.</summary>
    </devnotes>
    <function name="GetDesignParent" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="1556">
      <devnotes>
        <summary>GetDesignParent should return a TPersistent known to the designer, e.g. its parent TControl.</summary>
      </devnotes>
      <parameters>
        <retval type="TPersistent"/>
      </parameters>
    </function>
    <function name="GetBoundsRect" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="1558">
      <devnotes>
        <summary>Bounding rectangle representing this TPersistent in the designer</summary>
      </devnotes>
      <parameters>
        <retval type="TRect"/>
      </parameters>
    </function>
    <procedure name="Bind" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="1564">
      <devnotes>
        <summary>
         Bind this persistent with its shim, thus enabling GetBoundsRect without using the host.
         Example: TItemAppearanceProperties as IDesignablePersistent are bound to the TListItemShim
                  Their counterpart FmxReg.TListViewObjectsProperties are bound to the same TListItemShim
        </summary>
      </devnotes>
      <parameters>
        <parameter name="AShim" type="IPersistentShim"/>
      </parameters>
    </procedure>
    <procedure name="Unbind" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="1568">
      <devnotes>
        <summary>
         Unbind this persistent. The implementation would normally clear its reference to IPersistentShim.
        </summary>
      </devnotes>
    </procedure>
    <function name="BeingDesigned" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="1571">
      <devnotes>
        <summary>True if this TPersistent is currently in Design mode and wants the Designer to create
        IItem for itself.</summary>
      </devnotes>
      <parameters>
        <retval type="Boolean"/>
      </parameters>
    </function>
  </interface>
  <interface name="IMovablePersistent" GUID="{A86F9221-09E9-40A7-AF0E-5C3EB859C297}" ancestor="IInterface" file="FMX.Types.pas" line="1575">
    <devnotes>
      <summary>Interface for TPersistent to receive bounding rectangle changes from the Designer.</summary>
    </devnotes>
    <procedure name="SetBoundsRect" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="1578">
      <devnotes>
         <summary>Set bounds rectangle.</summary>
      </devnotes>
      <parameters>
        <parameter name="AValue" type="TRect" paramflags="const"/>
      </parameters>
    </procedure>
  </interface>
  <interface name="ISpriggedPersistent" GUID="{0F1D325A-8082-4DEA-8ABF-56A359A218A4}" ancestor="IInterface" file="FMX.Types.pas" line="1582">
    <devnotes>
      <summary>Interface that allows binding a TPersistent with a TreeView Sprig in StructureView</summary>
    </devnotes>
    <procedure name="SetSprig" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="1585">
      <devnotes>
         <summary>Set link to a TreeView sprig specified by APersistent. nil to break the link.</summary>
      </devnotes>
      <parameters>
        <parameter name="APersistent" type="TPersistent" paramflags="const"/>
      </parameters>
    </procedure>
    <function name="GetSprig" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="1587">
      <devnotes>
         <summary>Get link to a TreeView sprig. Returns nil if link does not exist.</summary>
      </devnotes>
      <parameters>
        <retval type="TPersistent"/>
      </parameters>
    </function>
  </interface>
  <type name="TCustomFindStyleResource" file="FMX.Types.pas" line="1610" procflags="closure">
  </type>
  <type name="TCustomTranslateProc" file="FMX.Types.pas" line="1639" procflags="">
  </type>
  <variable name="CustomTranslateProc" type="TCustomTranslateProc" file="FMX.Types.pas" line="1642"/>
  <variable name="AnchorAlign" visibility="public" file="FMX.Types.pas" line="1673"/>
  <class name="Log" file="FMX.Types.pas" line="1777">
    
    <ancestor name="TObject" namespace="System">
      <methodref name="Create" visibility="public" procflags="constructor">
      </methodref>
      <methodref name="Free" visibility="public">
      </methodref>
      <methodref name="DisposeOf" visibility="public" procflags="inline">
      </methodref>
      <methodref name="InitInstance" visibility="public" procflags="class">
      </methodref>
      <methodref name="CleanupInstance" visibility="public">
      </methodref>
      <methodref name="ClassType" visibility="public" procflags="inline">
      </methodref>
      <methodref name="ClassName" visibility="public" procflags="class">
      </methodref>
      <methodref name="ClassNameIs" visibility="public" procflags="class">
      </methodref>
      <methodref name="ClassParent" visibility="public" procflags="class inline">
      </methodref>
      <methodref name="ClassInfo" visibility="public" procflags="class inline">
      </methodref>
      <methodref name="InstanceSize" visibility="public" procflags="class inline">
      </methodref>
      <methodref name="InheritsFrom" visibility="public" procflags="class">
      </methodref>
      <methodref name="MethodAddress" visibility="public" procflags="class overload">
      </methodref>
      <methodref name="MethodAddress" visibility="public" procflags="class overload">
      </methodref>
      <methodref name="MethodName" visibility="public" procflags="class">
      </methodref>
      <methodref name="QualifiedClassName" visibility="public" procflags="class">
      </methodref>
      <methodref name="FieldAddress" visibility="public" procflags="overload">
      </methodref>
      <methodref name="FieldAddress" visibility="public" procflags="overload">
      </methodref>
      <methodref name="GetInterface" visibility="public">
      </methodref>
      <methodref name="GetInterfaceEntry" visibility="public" procflags="class">
      </methodref>
      <methodref name="GetInterfaceTable" visibility="public" procflags="class inline">
      </methodref>
      <methodref name="UnitName" visibility="public" procflags="class">
      </methodref>
      <methodref name="UnitScope" visibility="public" procflags="class">
      </methodref>
      <methodref name="Equals" visibility="public" procflags="virtual">
      </methodref>
      <methodref name="GetHashCode" visibility="public" procflags="virtual">
      </methodref>
      <methodref name="ToString" visibility="public" procflags="virtual">
      </methodref>
      <methodref name="SafeCallException" visibility="public" procflags="virtual">
      </methodref>
      <methodref name="AfterConstruction" visibility="public" procflags="virtual">
      </methodref>
      <methodref name="BeforeDestruction" visibility="public" procflags="virtual">
      </methodref>
      <methodref name="Dispatch" visibility="public" procflags="virtual">
      </methodref>
      <methodref name="DefaultHandler" visibility="public" procflags="virtual">
      </methodref>
      <methodref name="NewInstance" visibility="public" procflags="class virtual">
      </methodref>
      <methodref name="FreeInstance" visibility="public" procflags="virtual">
      </methodref>
      <methodref name="Destroy" visibility="public" procflags="destructor virtual">
      </methodref>
      <methodref name="GetDisposed" visibility="protected" procflags="inline">
      </methodref>
      <methodref name="CheckDisposed" visibility="protected" procflags="inline">
      </methodref>
      <propertyref name="Disposed" visibility="protected">
      </propertyref>
    </ancestor>
    <members>
      <field name="FLogger" type="IInterface" visibility="class private" varflags="class" file="FMX.Types.pas" line="1779"/>
      <function name="GetLogger" visibility="class private" procflags="static" file="FMX.Types.pas" line="1780">
        <parameters>
          <retval type="IInterface"/>
        </parameters>
      </function>
      <property name="Logger" visibility="protected" read="GetLogger" type="IInterface" file="FMX.Types.pas" line="1783">
        <devnotes>
           <summary>Referece to the logger service.</summary>
        </devnotes>
      </property>
      <anonMethod name="TToStringFunc" visibility="public" alias="FMX.Types.TToStringFunc" file="FMX.Types.pas" line="1786">
        <function name="Invoke" visibility="public" procflags="abstract virtual" file="FMX.Types.pas" line="1786">
          <parameters>
            <parameter name="AObject" type="TObject" paramflags="const"/>
            <retval type="string"/>
          </parameters>
        </function>
      </anonMethod>
      <struct name="TLogMark" visibility="public" alias="FMX.Types.TLogMark" size="16" file="FMX.Types.pas" line="1789">
        <field name="Msg" type="string" visibility="public" size="4" offset="0" file="FMX.Types.pas" line="1791">
          <devnotes>
             <summary>A short message</summary>
          </devnotes>
        </field>
        <field name="Time" type="TDateTime" visibility="public" size="8" offset="8" file="FMX.Types.pas" line="1793">
          <devnotes>
             <summary>Timestamp</summary>
          </devnotes>
        </field>
      </struct>
      <class name="TLogToken" visibility="public" alias="FMX.Types.TLogToken" file="FMX.Types.pas" line="1798">
        
        <members>
          <field name="FMarks" type="TList&lt;FMX.Types.Log.TLogMark&gt;" visibility="private" size="4" offset="4" file="FMX.Types.pas" line="1800"/>
          <function name="GetMarkAt" visibility="private" file="FMX.Types.pas" line="1801">
            <parameters>
              <parameter name="Index" type="Integer" paramflags="const"/>
              <retval type="Log.TLogMark"/>
            </parameters>
          </function>
          <function name="GetCount" visibility="private" file="FMX.Types.pas" line="1802">
            <parameters>
              <retval type="Integer"/>
            </parameters>
          </function>
          <constructor name="Create" visibility="protected" file="FMX.Types.pas" line="1804">
            <parameters>
            </parameters>
          </constructor>
          <procedure name="Mark" visibility="public" file="FMX.Types.pas" line="1807">
            <devnotes>
               <summary>Mark time during timed execution of a procedure.</summary>
            </devnotes>
            <parameters>
              <parameter name="Msg" type="string" paramflags="const"/>
            </parameters>
          </procedure>
          <property name="MarkAt[const Index]" visibility="public" read="TLogToken.GetMarkAt" type="Log.TLogMark" file="FMX.Types.pas" line="1809">
            <devnotes>
               <summary>Get a mark at Index.</summary>
            </devnotes>
          </property>
          <property name="Count" visibility="public" read="TLogToken.GetCount" type="Integer" file="FMX.Types.pas" line="1811">
            <devnotes>
               <summary>Count of accumulated Marks.</summary>
            </devnotes>
          </property>
        </members>
      </class>
      <procedure name="d" visibility="public" procflags="class overload" file="FMX.Types.pas" line="1815">
        <devnotes>
           <summary>Log a debug message. Same arguments as Format.</summary>
        </devnotes>
        <parameters>
          <parameter name="Fmt" type="string" paramflags="const"/>
          <parameter name="Args" paramflags="const">
            <array name="Args" file="FMX.Types.pas" line="6649">
              <element type="TVarRec"/>
            </array>
          </parameter>
        </parameters>
      </procedure>
      <procedure name="d" visibility="public" procflags="class overload inline" file="FMX.Types.pas" line="1817">
        <devnotes>
           <summary>Log a simple debug message.</summary>
        </devnotes>
        <parameters>
          <parameter name="Msg" type="string" paramflags="const"/>
        </parameters>
      </procedure>
      <procedure name="d" visibility="public" procflags="class overload inline" file="FMX.Types.pas" line="1820">
        <devnotes>
           <summary>Log a debug message with Tag, object data of Instance, Method that invokes the logger and message Msg.
           </summary>
        </devnotes>
        <parameters>
          <parameter name="Tag" type="string" paramflags="const"/>
          <parameter name="Instance" type="TObject" paramflags="const"/>
          <parameter name="Method" type="string" paramflags="const"/>
          <parameter name="Msg" type="string" paramflags="const"/>
        </parameters>
      </procedure>
      <procedure name="d" visibility="public" procflags="class overload inline" file="FMX.Types.pas" line="1822">
        <devnotes>
           <summary>Log a debug message with Tag, object data of Instance and a message Msg</summary>
        </devnotes>
        <parameters>
          <parameter name="Tag" type="string" paramflags="const"/>
          <parameter name="Instance" type="TObject" paramflags="const"/>
          <parameter name="Msg" type="string" paramflags="const"/>
        </parameters>
      </procedure>
      <procedure name="TimeStamp" visibility="public" procflags="class overload" file="FMX.Types.pas" line="1824">
        <devnotes>
           <summary>Log a time stamp with message Msg</summary>
        </devnotes>
        <parameters>
          <parameter name="Msg" type="string" paramflags="const"/>
        </parameters>
      </procedure>
      <function name="Trace" visibility="public" procflags="class overload" file="FMX.Types.pas" line="1828">
        <devnotes>
           <summary>Perform a timed execution of Func and print execution times, return function result.
           Proc receives a parameter TLogToken which can be used to mark specific points where timestamps should be taken
           in addition to complete procedure time.</summary>
        </devnotes>
        <parameters>
          <parameter name="Tag" type="string" paramflags="const"/>
          <parameter name="Func" type="TFunc&lt;FMX.Types.Log.TLogToken,FMX.Types.Log.Trace.TResult&gt;" paramflags="const"/>
          <parameter name="Threshold" type="Integer" paramflags="const">
            <value>
              $FFFFFFFF
            </value>
          </parameter>
          <retval type="TResult"/>
        </parameters>
      </function>
      <function name="Trace" visibility="public" procflags="class overload" file="FMX.Types.pas" line="1831">
        <devnotes>
           <summary>A convenience variant of Trace&lt;TResult&gt; when token is not needed.</summary>
        </devnotes>
        <parameters>
          <parameter name="Tag" type="string" paramflags="const"/>
          <parameter name="Func" type="TFunc&lt;FMX.Types.Log.Trace.TResult&gt;" paramflags="const"/>
          <parameter name="Threshold" type="Integer" paramflags="const">
            <value>
              $FFFFFFFF
            </value>
          </parameter>
          <retval type="TResult"/>
        </parameters>
      </function>
      <procedure name="Trace" visibility="public" procflags="class overload" file="FMX.Types.pas" line="1833">
        <devnotes>
           <summary>A convenience variant of Trace&lt;TResult&gt; for procedures.</summary>
        </devnotes>
        <parameters>
          <parameter name="Tag" type="string" paramflags="const"/>
          <parameter name="Proc" type="TProc&lt;FMX.Types.Log.TLogToken&gt;" paramflags="const"/>
          <parameter name="Threshold" type="Integer" paramflags="const">
            <value>
              $FFFFFFFF
            </value>
          </parameter>
        </parameters>
      </procedure>
      <procedure name="Trace" visibility="public" procflags="class overload" file="FMX.Types.pas" line="1835">
        <devnotes>
           <summary>A convenience variant of Trace&lt;TResult&gt; for procedures when token is not needed.</summary>
        </devnotes>
        <parameters>
          <parameter name="Tag" type="string" paramflags="const"/>
          <parameter name="Proc" type="TProc" paramflags="const"/>
          <parameter name="Threshold" type="Integer" paramflags="const">
            <value>
              $FFFFFFFF
            </value>
          </parameter>
        </parameters>
      </procedure>
      <function name="ObjToString" visibility="public" procflags="class" file="FMX.Types.pas" line="1837">
        <devnotes>
           <summary>Get a basic string representation of an object, consisting of ClassName and its pointer</summary>
        </devnotes>
        <parameters>
          <parameter name="Instance" type="TObject" paramflags="const"/>
          <retval type="string"/>
        </parameters>
      </function>
      <function name="ArrayToString" visibility="public" procflags="class overload" file="FMX.Types.pas" line="1839">
        <devnotes>
           <summary>Get a string representation of array using MakeStr function to convert individual elements.</summary>
        </devnotes>
        <parameters>
          <parameter name="AArray" type="TEnumerable&lt;FMX.Types.TFmxObject&gt;" paramflags="const"/>
          <parameter name="MakeStr" type="Log.TToStringFunc" paramflags="const"/>
          <retval type="string"/>
        </parameters>
      </function>
      <function name="ArrayToString" visibility="public" procflags="class overload" file="FMX.Types.pas" line="1841">
        <devnotes>
           <summary>Get a string representation of array using TObject.ToString to convert individual elements.</summary>
        </devnotes>
        <parameters>
          <parameter name="AArray" type="TEnumerable&lt;FMX.Types.TFmxObject&gt;" paramflags="const"/>
          <retval type="string"/>
        </parameters>
      </function>
      <procedure name="DumpFmxObject" visibility="public" procflags="class" file="FMX.Types.pas" line="1843">
        <devnotes>
           <summary>Dump complete TFmxObject with all its children.</summary>
        </devnotes>
        <parameters>
          <parameter name="AObject" type="TFmxObject" paramflags="const"/>
          <parameter name="Nest" type="Integer" paramflags="const">
            <value>
              $0
            </value>
          </parameter>
        </parameters>
      </procedure>
      <procedure name="Create@" visibility="class private" procflags="class constructor noself" generated="true">
      </procedure>
      <procedure name="Destroy@" visibility="class private" procflags="class destructor noself" generated="true">
      </procedure>
    </members>
  </class>
  <class name="TEnumerableFilter`2" file="FMX.Types.pas" line="1851">
    
    <members>
      <field name="FBaseEnum" type=":1" visibility="private" size="4" offset="4" file="FMX.Types.pas" line="1853"/>
      <field name="FSelfDestruct" type="Boolean" visibility="private" size="1" offset="8" file="FMX.Types.pas" line="1854"/>
      <field name="FPredicate" visibility="private" size="4" offset="12" file="FMX.Types.pas" line="1855">
      </field>
      <function name="DoGetEnumerator" visibility="protected" procflags="override" file="FMX.Types.pas" line="1857">
        <parameters>
          <retval>
          </retval>
        </parameters>
      </function>
      <constructor name="Create" visibility="public" file="FMX.Types.pas" line="1859">
        <parameters>
          <parameter name="FullEnum" type=":1" paramflags="const"/>
          <parameter name="SelfDestruct" type="Boolean">
            <value>
              False
            </value>
          </parameter>
          <parameter name="Pred" paramflags="const">
            <value>
              nil
            </value>
          </parameter>
        </parameters>
      </constructor>
      <function name="Filter" visibility="public" procflags="class" file="FMX.Types.pas" line="1860">
        <parameters>
          <parameter name="Src" type=":1" paramflags="const"/>
          <parameter name="Predicate" paramflags="const">
            <value>
              nil
            </value>
          </parameter>
          <retval>
          </retval>
        </parameters>
      </function>
      <class name="TFilterEnumerator" visibility="public" alias="FMX.Types.TFilterEnumerator" file="FMX.Types.pas" line="1863">
        
        <members>
          <field name="FCleanup" visibility="private" size="4" offset="4" file="FMX.Types.pas" line="1865">
          </field>
          <field name="FRawEnumerator" type=":1" visibility="private" size="4" offset="8" file="FMX.Types.pas" line="1866"/>
          <field name="FCurrent" type="T" visibility="private" size="1" offset="12" file="FMX.Types.pas" line="1867"/>
          <field name="FPredicate" visibility="private" size="4" offset="16" file="FMX.Types.pas" line="1868">
          </field>
          <function name="GetCurrent" visibility="private" file="FMX.Types.pas" line="1869">
            <parameters>
              <retval type="T"/>
            </parameters>
          </function>
          <function name="DoGetCurrent" visibility="protected" procflags="override" file="FMX.Types.pas" line="1871">
            <parameters>
              <retval type="T"/>
            </parameters>
          </function>
          <function name="DoMoveNext" visibility="protected" procflags="override" file="FMX.Types.pas" line="1872">
            <parameters>
              <retval type="Boolean"/>
            </parameters>
          </function>
          <constructor name="Create" visibility="public" file="FMX.Types.pas" line="1874">
            <parameters>
              <parameter name="Enumerable" type=":1" paramflags="const"/>
              <parameter name="Cleanup" paramflags="const">
              </parameter>
              <parameter name="Pred" paramflags="const">
              </parameter>
            </parameters>
          </constructor>
          <destructor name="Destroy" visibility="public" file="FMX.Types.pas" line="1876">
            <parameters>
            </parameters>
          </destructor>
          <property name="Current" visibility="public" read="TFilterEnumerator.GetCurrent" type="T" file="FMX.Types.pas" line="1877"/>
          <function name="MoveNext" visibility="public" file="FMX.Types.pas" line="1878">
            <parameters>
              <retval type="Boolean"/>
            </parameters>
          </function>
        </members>
      </class>
    </members>
  </class>
  <class name="TIdleMessage" file="FMX.Types.pas" line="1882">
    
  </class>
  <struct name="TDisplay" size="80" file="FMX.Types.pas" line="1886">
    <devnotes>
       <summary>Information about display.</summary>
    </devnotes>
    <field name="Id" type="NativeUInt" visibility="public" size="4" offset="0" file="FMX.Types.pas" line="1888">
      <devnotes>
         <summary>The unique id of display.</summary>
      </devnotes>
    </field>
    <field name="Index" type="Integer" visibility="public" size="4" offset="4" file="FMX.Types.pas" line="1890">
      <devnotes>
         <summary>Index is the same as MonitorNum. Added for the sake of brevity.</summary>
      </devnotes>
    </field>
    <field name="Primary" type="Boolean" visibility="public" size="1" offset="8" file="FMX.Types.pas" line="1892">
      <devnotes>
         <summary>Is this the main display in the system?</summary>
      </devnotes>
    </field>
    <field name="Bounds" type="TRectF" visibility="public" size="16" offset="12" file="FMX.Types.pas" line="1895">
      <devnotes>
         <summary>Screen size (dp) without taking into account the taskbar and other decorative elements.</summary>
         <remarks>The Windows platform doesn't allow to determinate logical position of screen definitely.</remarks>
      </devnotes>
    </field>
    <field name="PhysicalBounds" type="TRect" visibility="public" size="16" offset="28" file="FMX.Types.pas" line="1897">
      <devnotes>
         <summary>Screen size (px) without taking into account the taskbar and other decorative elements.</summary>
      </devnotes>
    </field>
    <field name="Workarea" type="TRectF" visibility="public" size="16" offset="44" file="FMX.Types.pas" line="1899">
      <devnotes>
         <summary>Screen size (dp) minus the taskbar, and other decorative items.</summary>
      </devnotes>
    </field>
    <field name="PhysicalWorkarea" type="TRect" visibility="public" size="16" offset="60" file="FMX.Types.pas" line="1901">
      <devnotes>
         <summary>Screen size (px) minus the taskbar, and other decorative items.</summary>
      </devnotes>
    </field>
    <field name="Scale" type="Single" visibility="public" size="4" offset="76" file="FMX.Types.pas" line="1903">
      <devnotes>
         <summary>Display scale.</summary>
      </devnotes>
    </field>
    <function name="BoundsRect" visibility="public" file="FMX.Types.pas" line="1905">
      <devnotes>
         <summary>It is the same as Bounds.</summary>
      </devnotes>
      <parameters>
        <retval type="TRectF"/>
      </parameters>
    </function>
    <function name="WorkareaRect" visibility="public" file="FMX.Types.pas" line="1907">
      <devnotes>
         <summary>It is the same as Workarea.</summary>
      </devnotes>
      <parameters>
        <retval type="TRectF"/>
      </parameters>
    </function>
    <constructor name="Create" visibility="public" file="FMX.Types.pas" line="1909">
      <parameters>
        <parameter name="AIndex" type="Integer" paramflags="const"/>
        <parameter name="APrimary" type="Boolean" paramflags="const"/>
        <parameter name="ABounds" type="TRectF" paramflags="const"/>
        <parameter name="AWorkArea" type="TRectF" paramflags="const"/>
      </parameters>
    </constructor>
  </struct>
  <type name="TShowVirtualKeyboard" file="FMX.Types.pas" line="1926" procflags="">
  </type>
  <variable name="SharedContext" type="TRttiContext" file="FMX.Types.pas" line="1933"/>
  <variable name="ClonePropertiesCache" type="TDictionary&lt;System.string,System.Generics.Collections.TList&lt;System.Rtti.TRttiProperty&gt;&gt;" file="FMX.Types.pas" line="1934"/>
  <enum name="TKeyKind" file="FMX.Types.pas" line="1937">
    <element value="0" name="Usual" file="FMX.Types.pas" line="1937"/>
    <element value="1" name="Functional" file="FMX.Types.pas" line="1937"/>
    <element value="2" name="Unknown" file="FMX.Types.pas" line="1937"/>
  </enum>
  <function name="IsHandleValid" visibility="public" file="FMX.Types.pas" line="1968">
    <parameters>
      <parameter name="Hnd" type="NativeUInt"/>
      <retval type="Boolean"/>
    </parameters>
  </function>
  <procedure name="DisposeOfAndNil" visibility="public" file="FMX.Types.pas" line="1973">
    <devnotes>
       <summary>Ignores the reference count and forces the object to be released. Sets <c>nil</c> to <c>AObject</c>.</summary>
    </devnotes>
    <parameters>
      <parameter name="AObject" paramflags="var"/>
    </parameters>
  </procedure>
  <procedure name="RegisterFmxClasses" visibility="public" procflags="overload" file="FMX.Types.pas" line="1983">
    <parameters>
      <parameter name="RegClasses" paramflags="const">
        <array name="RegClasses" file="FMX.Types.pas" line="1982">
          <element type="TPersistentClass"/>
        </array>
      </parameter>
      <parameter name="GroupClasses" paramflags="const">
        <array name="GroupClasses" file="FMX.Types.pas" line="1983">
          <element type="TPersistentClass"/>
        </array>
      </parameter>
    </parameters>
  </procedure>
  <procedure name="RegisterFmxClasses" visibility="public" procflags="overload" file="FMX.Types.pas" line="1995">
    <parameters>
      <parameter name="RegClasses" paramflags="const">
        <array name="RegClasses" file="FMX.Types.pas" line="1995">
          <element type="TPersistentClass"/>
        </array>
      </parameter>
    </parameters>
  </procedure>
  <function name="DelAmp" visibility="public" file="FMX.Types.pas" line="2000">
    <devnotes>
       <summary>Removes the ampersand '&amp;' characters  of the Text string.</summary>
    </devnotes>
    <parameters>
      <parameter name="AText" type="string" paramflags="const"/>
      <retval type="string"/>
    </parameters>
  </function>
  <function name="FindClosestPixelFormat" visibility="public" file="FMX.Types.pas" line="2471">
    <parameters>
      <parameter name="Format" type="TPixelFormat"/>
      <parameter name="FormatList" type="TPixelFormatList" paramflags="const"/>
      <retval type="TPixelFormat"/>
    </parameters>
  </function>
  <function name="PixelToFloat4" visibility="public" file="FMX.Types.pas" line="2500">
    <parameters>
      <parameter name="Input" type="Pointer"/>
      <parameter name="InputFormat" type="TPixelFormat"/>
      <retval type="TAlphaColorF"/>
    </parameters>
  </function>
  <procedure name="Float4ToPixel" visibility="public" file="FMX.Types.pas" line="2668">
    <parameters>
      <parameter name="Input" type="TAlphaColorF" paramflags="const"/>
      <parameter name="Output" type="Pointer"/>
      <parameter name="OutputFormat" type="TPixelFormat"/>
    </parameters>
  </procedure>
  <function name="PixelToAlphaColor" visibility="public" file="FMX.Types.pas" line="2752">
    <parameters>
      <parameter name="Input" type="Pointer"/>
      <parameter name="InputFormat" type="TPixelFormat"/>
      <retval type="TAlphaColor"/>
    </parameters>
  </function>
  <procedure name="AlphaColorToPixel" visibility="public" file="FMX.Types.pas" line="2800">
    <parameters>
      <parameter name="Input" type="TAlphaColor"/>
      <parameter name="Output" type="Pointer"/>
      <parameter name="OutputFormat" type="TPixelFormat"/>
    </parameters>
  </procedure>
  <procedure name="ChangePixelFormat" visibility="public" file="FMX.Types.pas" line="2830">
    <parameters>
      <parameter name="AInput" type="Pointer" paramflags="const"/>
      <parameter name="AOutput" type="Pointer" paramflags="const"/>
      <parameter name="APixelCount" type="Integer" paramflags="const"/>
      <parameter name="AInputFormat" type="TPixelFormat" paramflags="const"/>
      <parameter name="AOutputFormat" type="TPixelFormat" paramflags="const"/>
    </parameters>
  </procedure>
  <procedure name="ScanlineToAlphaColor" visibility="public" file="FMX.Types.pas" line="2860">
    <parameters>
      <parameter name="Input" type="Pointer"/>
      <parameter name="Output" type="PAlphaColor"/>
      <parameter name="PixelCount" type="Integer"/>
      <parameter name="InputFormat" type="TPixelFormat"/>
    </parameters>
  </procedure>
  <procedure name="AlphaColorToScanline" visibility="public" file="FMX.Types.pas" line="2882">
    <parameters>
      <parameter name="Input" type="PAlphaColor"/>
      <parameter name="Output" type="Pointer"/>
      <parameter name="PixelCount" type="Integer"/>
      <parameter name="OutputFormat" type="TPixelFormat"/>
    </parameters>
  </procedure>
  <function name="PixelFormatToString" visibility="public" file="FMX.Types.pas" line="2904">
    <parameters>
      <parameter name="Format" type="TPixelFormat"/>
      <retval type="string"/>
    </parameters>
  </function>
  <procedure name="AddCustomFindStyleResource" visibility="public" file="FMX.Types.pas" line="2919">
    <parameters>
      <parameter name="ACustomProc" type="TCustomFindStyleResource" paramflags="const"/>
    </parameters>
  </procedure>
  <procedure name="RemoveCustomFindStyleResource" visibility="public" file="FMX.Types.pas" line="2927">
    <parameters>
      <parameter name="ACustomProc" type="TCustomFindStyleResource" paramflags="const"/>
    </parameters>
  </procedure>
  <procedure name="AddResource" visibility="public" file="FMX.Types.pas" line="2933">
    <parameters>
      <parameter name="AObject" type="TFmxObject" paramflags="const"/>
    </parameters>
  </procedure>
  <procedure name="RemoveResource" visibility="public" file="FMX.Types.pas" line="2950">
    <parameters>
      <parameter name="AObject" type="TFmxObject" paramflags="const"/>
    </parameters>
  </procedure>
  <function name="FindStyleResource" visibility="public" file="FMX.Types.pas" line="2958">
    <parameters>
      <parameter name="AStyleLookup" type="string" paramflags="const"/>
      <parameter name="Clone" type="Boolean" paramflags="const">
        <value>
          False
        </value>
      </parameter>
      <retval type="TFmxObject"/>
    </parameters>
  </function>
  <procedure name="CollectLangStart" visibility="public" file="FMX.Types.pas" line="3007">
  </procedure>
  <procedure name="CollectLangFinish" visibility="public" file="FMX.Types.pas" line="3018">
  </procedure>
  <function name="CollectLangStrings" visibility="public" file="FMX.Types.pas" line="3023">
    <parameters>
      <retval type="TStrings"/>
    </parameters>
  </function>
  <procedure name="LoadLangFromFile" visibility="public" file="FMX.Types.pas" line="3034">
    <parameters>
      <parameter name="AFileName" type="string" paramflags="const"/>
    </parameters>
  </procedure>
  <procedure name="LoadLangFromStrings" visibility="public" file="FMX.Types.pas" line="3049">
    <parameters>
      <parameter name="AStr" type="TStrings" paramflags="const"/>
    </parameters>
  </procedure>
  <procedure name="ResetLang" visibility="public" file="FMX.Types.pas" line="3064">
  </procedure>
  <function name="Translate" visibility="public" file="FMX.Types.pas" line="3092">
    <parameters>
      <parameter name="AText" type="string" paramflags="const"/>
      <retval type="string"/>
    </parameters>
  </function>
  <function name="TranslateText" visibility="public" file="FMX.Types.pas" line="3139">
    <parameters>
      <parameter name="AText" type="string" paramflags="const"/>
      <retval type="string"/>
    </parameters>
  </function>
  <procedure name="ArrangeControl" visibility="public" file="FMX.Types.pas" line="3347">
    <parameters>
      <parameter name="Control" type="IAlignableObject" paramflags="const"/>
      <parameter name="AAlign" type="TAlignLayout"/>
      <parameter name="AParentWidth" type="Single" paramflags="const"/>
      <parameter name="AParentHeight" type="Single" paramflags="const"/>
      <parameter name="ALastWidth" type="Single" paramflags="const"/>
      <parameter name="ALastHeight" type="Single" paramflags="const"/>
      <parameter name="R" type="TRectF" paramflags="var"/>
    </parameters>
  </procedure>
  <procedure name="AlignObjects" visibility="public" file="FMX.Types.pas" line="3436">
    <parameters>
      <parameter name="AParent" type="TFmxObject" paramflags="const"/>
      <parameter name="APadding" type="TBounds"/>
      <parameter name="AParentWidth" type="Single"/>
      <parameter name="AParentHeight" type="Single"/>
      <parameter name="ALastWidth" type="Single" paramflags="var"/>
      <parameter name="ALastHeight" type="Single" paramflags="var"/>
      <parameter name="ADisableAlign" type="Boolean" paramflags="var"/>
    </parameters>
  </procedure>
  <function name="CornersF" visibility="public" procflags="overload" file="FMX.Types.pas" line="3541">
    <parameters>
      <parameter name="Pt1" type="TPointF" paramflags="const"/>
      <parameter name="Pt2" type="TPointF" paramflags="const"/>
      <parameter name="Pt3" type="TPointF" paramflags="const"/>
      <parameter name="Pt4" type="TPointF" paramflags="const"/>
      <retval type="TCornersF"/>
    </parameters>
  </function>
  <function name="CornersF" visibility="public" procflags="overload" file="FMX.Types.pas" line="3549">
    <parameters>
      <parameter name="Left" type="Single"/>
      <parameter name="Top" type="Single"/>
      <parameter name="Width" type="Single"/>
      <parameter name="Height" type="Single"/>
      <retval type="TCornersF"/>
    </parameters>
  </function>
  <function name="CornersF" visibility="public" procflags="overload" file="FMX.Types.pas" line="3557">
    <parameters>
      <parameter name="Rect" type="TRectF" paramflags="const"/>
      <retval type="TCornersF"/>
    </parameters>
  </function>
  <function name="CornersF" visibility="public" procflags="overload" file="FMX.Types.pas" line="3565">
    <parameters>
      <parameter name="Rect" type="TRect" paramflags="const"/>
      <retval type="TCornersF"/>
    </parameters>
  </function>
  <procedure name="RecalcAnchorRules" visibility="public" file="FMX.Types.pas" line="5488">
    <parameters>
      <parameter name="Parent" type="TFmxObject" paramflags="const"/>
      <parameter name="Anchors" type="TAnchors"/>
      <parameter name="BoundsRect" type="TRectF" paramflags="const"/>
      <parameter name="AOriginalParentSize" type="TPointF" paramflags="var"/>
      <parameter name="AAnchorOrigin" type="TPointF" paramflags="var"/>
      <parameter name="AAnchorRules" type="TPointF" paramflags="var"/>
    </parameters>
  </procedure>
  <procedure name="RecalcControlOriginalParentSize" visibility="public" file="FMX.Types.pas" line="5517">
    <parameters>
      <parameter name="Parent" type="TFmxObject" paramflags="const"/>
      <parameter name="ComponentState" type="TComponentState"/>
      <parameter name="Anchoring" type="Boolean" paramflags="const"/>
      <parameter name="AOriginalParentSize" type="TPointF" paramflags="var"/>
    </parameters>
  </procedure>
  <procedure name="RegisterShowVKProc" visibility="public" file="FMX.Types.pas" line="6053">
    <parameters>
      <parameter name="ShowVirtualKeyboard" type="TShowVirtualKeyboard" paramflags="const"/>
    </parameters>
  </procedure>
  <procedure name="RegisterFlasherClass" visibility="public" file="FMX.Types.pas" line="6180">
    <devnotes>
       <summary>Registers the flasher class for the TCustomCaret object specified
       in the CaretClass parameter.</summary>
    </devnotes>
    <parameters>
      <parameter name="FlasherClass" type="TFmxObjectClass" paramflags="const"/>
      <parameter name="CaretClass" type="TCaretClass" paramflags="const"/>
    </parameters>
  </procedure>
  <function name="FlasherClass" visibility="public" file="FMX.Types.pas" line="6223">
    <devnotes>
       <summary>Returns the class of a flasher registered for the TCustomCaret
       object specified in the CaretClass parameter.</summary>
    </devnotes>
    <parameters>
      <parameter name="CaretClass" type="TCaretClass" paramflags="const"/>
      <retval type="TFmxObjectClass"/>
    </parameters>
  </function>
  <function name="AssignedFlasher" visibility="public" file="FMX.Types.pas" line="6233">
    <devnotes>
       <summary>Checks whether a flasher is registered for the TCustomCaret object
       specified in the CaretClass parameter.</summary>
    </devnotes>
    <parameters>
      <parameter name="CaretClass" type="TCaretClass" paramflags="const"/>
      <retval type="Boolean"/>
    </parameters>
  </function>
  <function name="Flasher" visibility="public" file="FMX.Types.pas" line="6243">
    <devnotes>
       <summary>Returns the flasher object registered for the TCustomCaret object
       specified in the CaretClass parameter.</summary>
    </devnotes>
    <parameters>
      <parameter name="CaretClass" type="TCaretClass" paramflags="const"/>
      <retval type="TFmxObject"/>
    </parameters>
  </function>
</namespace>