<?xml version="1.0" ?><namespace name="Vcl.Menus" platform="Win32">
  <const name="mbNone" type="TMenuBreak" file="Vcl.Menus.pas" line="37">
    <value>
      mbNone
    </value>
  </const>
  <const name="mbBreak" type="TMenuBreak" file="Vcl.Menus.pas" line="37">
    <value>
      mbBreak
    </value>
  </const>
  <const name="mbBarBreak" type="TMenuBreak" file="Vcl.Menus.pas" line="37">
    <value>
      mbBarBreak
    </value>
  </const>
  <const name="maAutomatic" type="TMenuItemAutoFlag" file="Vcl.Menus.pas" line="45">
    <value>
      maAutomatic
    </value>
  </const>
  <const name="maManual" type="TMenuItemAutoFlag" file="Vcl.Menus.pas" line="45">
    <value>
      maManual
    </value>
  </const>
  <const name="maParent" type="TMenuItemAutoFlag" file="Vcl.Menus.pas" line="45">
    <value>
      maParent
    </value>
  </const>
  <const name="fkCommand" type="TFindItemKind" file="Vcl.Menus.pas" line="294">
    <value>
      fkCommand
    </value>
  </const>
  <const name="fkHandle" type="TFindItemKind" file="Vcl.Menus.pas" line="294">
    <value>
      fkHandle
    </value>
  </const>
  <const name="fkShortCut" type="TFindItemKind" file="Vcl.Menus.pas" line="294">
    <value>
      fkShortCut
    </value>
  </const>
  <const name="paLeft" type="TPopupAlignment" file="Vcl.Menus.pas" line="404">
    <value>
      paLeft
    </value>
  </const>
  <const name="paRight" type="TPopupAlignment" file="Vcl.Menus.pas" line="404">
    <value>
      paRight
    </value>
  </const>
  <const name="paCenter" type="TPopupAlignment" file="Vcl.Menus.pas" line="404">
    <value>
      paCenter
    </value>
  </const>
  <const name="tbRightButton" type="TTrackButton" file="Vcl.Menus.pas" line="405">
    <value>
      tbRightButton
    </value>
  </const>
  <const name="tbLeftButton" type="TTrackButton" file="Vcl.Menus.pas" line="405">
    <value>
      tbLeftButton
    </value>
  </const>
  <const name="maLeftToRight" type="TMenuAnimations" file="Vcl.Menus.pas" line="406">
    <value>
      maLeftToRight
    </value>
  </const>
  <const name="maRightToLeft" type="TMenuAnimations" file="Vcl.Menus.pas" line="406">
    <value>
      maRightToLeft
    </value>
  </const>
  <const name="maTopToBottom" type="TMenuAnimations" file="Vcl.Menus.pas" line="406">
    <value>
      maTopToBottom
    </value>
  </const>
  <const name="maBottomToTop" type="TMenuAnimations" file="Vcl.Menus.pas" line="406">
    <value>
      maBottomToTop
    </value>
  </const>
  <const name="maNone" type="TMenuAnimations" file="Vcl.Menus.pas" line="406">
    <value>
      maNone
    </value>
  </const>
  <class name="EMenuError" file="Vcl.Menus.pas" line="35">
    <ancestor name="Exception" namespace="System.SysUtils">
      <methodref name="Create@" visibility="class private" procflags="class constructor noself">
      </methodref>
      <methodref name="Destroy@" visibility="class private" procflags="class destructor noself">
      </methodref>
      <methodref name="SetInnerException" visibility="protected">
      </methodref>
      <methodref name="SetStackInfo" visibility="protected">
      </methodref>
      <methodref name="GetStackTrace" visibility="protected">
      </methodref>
      <methodref name="RaisingException" visibility="protected" procflags="virtual">
      </methodref>
      <methodref name="Create" visibility="public" procflags="constructor">
      </methodref>
      <methodref name="CreateFmt" visibility="public" procflags="constructor">
      </methodref>
      <methodref name="CreateRes" visibility="public" procflags="constructor overload">
      </methodref>
      <methodref name="CreateRes" visibility="public" procflags="constructor overload">
      </methodref>
      <methodref name="CreateResFmt" visibility="public" procflags="constructor overload">
      </methodref>
      <methodref name="CreateResFmt" visibility="public" procflags="constructor overload">
      </methodref>
      <methodref name="CreateHelp" visibility="public" procflags="constructor">
      </methodref>
      <methodref name="CreateFmtHelp" visibility="public" procflags="constructor">
      </methodref>
      <methodref name="CreateResHelp" visibility="public" procflags="constructor overload">
      </methodref>
      <methodref name="CreateResHelp" visibility="public" procflags="constructor overload">
      </methodref>
      <methodref name="CreateResFmtHelp" visibility="public" procflags="constructor overload">
      </methodref>
      <methodref name="CreateResFmtHelp" visibility="public" procflags="constructor overload">
      </methodref>
      <methodref name="Destroy" visibility="public" procflags="destructor override">
      </methodref>
      <methodref name="GetBaseException" visibility="public" procflags="virtual">
      </methodref>
      <methodref name="ToString" visibility="public" procflags="override">
      </methodref>
      <propertyref name="BaseException" visibility="public">
      </propertyref>
      <propertyref name="HelpContext" visibility="public">
      </propertyref>
      <propertyref name="InnerException" visibility="public">
      </propertyref>
      <propertyref name="Message" visibility="public">
      </propertyref>
      <propertyref name="StackTrace" visibility="public">
      </propertyref>
      <propertyref name="StackInfo" visibility="public">
      </propertyref>
      <methodref name="RaiseOuterException" visibility="public" procflags="static">
      </methodref>
      <methodref name="ThrowOuterException" visibility="public" procflags="static">
      </methodref>
      <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>
    </ancestor>
  </class>
  <enum name="TMenuBreak" file="Vcl.Menus.pas" line="37">
    <element value="0" name="mbNone" file="Vcl.Menus.pas" line="37"/>
    <element value="1" name="mbBreak" file="Vcl.Menus.pas" line="37"/>
    <element value="2" name="mbBarBreak" file="Vcl.Menus.pas" line="37"/>
  </enum>
  <type name="TMenuChangeEvent" file="Vcl.Menus.pas" line="38" procflags="closure">
  </type>
  <type name="TMenuDrawItemEvent" file="Vcl.Menus.pas" line="39" procflags="closure">
  </type>
  <type name="TAdvancedMenuDrawItemEvent" file="Vcl.Menus.pas" line="41" procflags="closure">
  </type>
  <type name="TMenuMeasureItemEvent" file="Vcl.Menus.pas" line="43" procflags="closure">
  </type>
  <enum name="TMenuItemAutoFlag" file="Vcl.Menus.pas" line="45">
    <element value="0" name="maAutomatic" file="Vcl.Menus.pas" line="45"/>
    <element value="1" name="maManual" file="Vcl.Menus.pas" line="45"/>
    <element value="2" name="maParent" file="Vcl.Menus.pas" line="45"/>
  </enum>
  <enum name="TMenuAutoFlag" alias="Vcl.Menus.TMenuItemAutoFlag" file="Vcl.Menus.pas" line="46">
    <element value="0" name="maAutomatic" file="Vcl.Menus.pas" line="45"/>
    <element value="1" name="maManual" file="Vcl.Menus.pas" line="45"/>
  </enum>
  <class name="TMenuActionLink" file="Vcl.Menus.pas" line="50">
    <ancestor name="TActionLink" namespace="Vcl.ActnList">
      <methodref name="IsImageNameLinked" visibility="protected" procflags="virtual"/>
      <ancestor name="TContainedActionLink" namespace="System.Actions">
        <methodref name="DefaultIsLinked" visibility="protected" procflags="virtual">
        </methodref>
        <methodref name="IsCaptionLinked" visibility="protected" procflags="virtual">
        </methodref>
        <methodref name="IsCheckedLinked" visibility="protected" procflags="virtual">
        </methodref>
        <methodref name="IsEnabledLinked" visibility="protected" procflags="virtual">
        </methodref>
        <methodref name="IsGroupIndexLinked" visibility="protected" procflags="virtual">
        </methodref>
        <methodref name="IsHelpContextLinked" visibility="protected" procflags="virtual">
        </methodref>
        <methodref name="IsHelpLinked" visibility="protected" procflags="virtual">
        </methodref>
        <methodref name="IsHintLinked" visibility="protected" procflags="virtual">
        </methodref>
        <methodref name="IsImageIndexLinked" visibility="protected" procflags="virtual">
        </methodref>
        <methodref name="IsShortCutLinked" visibility="protected" procflags="virtual">
        </methodref>
        <methodref name="IsVisibleLinked" visibility="protected" procflags="virtual">
        </methodref>
        <methodref name="IsStatusActionLinked" visibility="protected" procflags="virtual">
        </methodref>
        <methodref name="SetAutoCheck" visibility="protected" procflags="virtual">
        </methodref>
        <methodref name="SetCaption" visibility="protected" procflags="virtual">
        </methodref>
        <methodref name="SetChecked" visibility="protected" procflags="virtual">
        </methodref>
        <methodref name="SetEnabled" visibility="protected" procflags="virtual">
        </methodref>
        <methodref name="SetGroupIndex" visibility="protected" procflags="virtual">
        </methodref>
        <methodref name="SetHelpContext" visibility="protected" procflags="virtual">
        </methodref>
        <methodref name="SetHelpKeyword" visibility="protected" procflags="virtual">
        </methodref>
        <methodref name="SetHelpType" visibility="protected" procflags="virtual">
        </methodref>
        <methodref name="SetHint" visibility="protected" procflags="virtual">
        </methodref>
        <methodref name="SetImageIndex" visibility="protected" procflags="virtual">
        </methodref>
        <methodref name="SetShortCut" visibility="protected" procflags="virtual">
        </methodref>
        <methodref name="SetVisible" visibility="protected" procflags="virtual">
        </methodref>
        <methodref name="SetStatusAction" visibility="protected" procflags="virtual">
        </methodref>
        <ancestor name="TBasicActionLink" namespace="System.Classes">
          <methodref name="AssignClient" visibility="protected" procflags="virtual">
          </methodref>
          <methodref name="Change" visibility="protected" procflags="virtual">
          </methodref>
          <methodref name="IsOnExecuteLinked" visibility="protected" procflags="virtual">
          </methodref>
          <methodref name="SetAction" visibility="protected" procflags="virtual">
          </methodref>
          <methodref name="SetOnExecute" visibility="protected" procflags="virtual">
          </methodref>
          <methodref name="Create" visibility="public" procflags="constructor virtual">
          </methodref>
          <methodref name="Destroy" visibility="public" procflags="destructor override">
          </methodref>
          <methodref name="Execute" visibility="public" procflags="virtual">
          </methodref>
          <methodref name="Update" visibility="public" procflags="virtual">
          </methodref>
          <propertyref name="Action" visibility="public">
          </propertyref>
          <eventref name="OnChange" visibility="public">
          </eventref>
          <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>
        </ancestor>
      </ancestor>
    </ancestor>
    <members>
      <field name="FClient" type="TMenuItem" visibility="protected" size="4" offset="24" file="Vcl.Menus.pas" line="52"/>
      <procedure name="AssignClient" visibility="protected" procflags="override" file="Vcl.Menus.pas" line="53">
        <parameters>
          <parameter name="AClient" type="TObject"/>
        </parameters>
      </procedure>
      <function name="IsAutoCheckLinked" visibility="protected" procflags="virtual" file="Vcl.Menus.pas" line="54">
        <parameters>
          <retval type="Boolean"/>
        </parameters>
      </function>
      <function name="IsCaptionLinked" visibility="protected" procflags="override" file="Vcl.Menus.pas" line="55">
        <parameters>
          <retval type="Boolean"/>
        </parameters>
      </function>
      <function name="IsCheckedLinked" visibility="protected" procflags="override" file="Vcl.Menus.pas" line="56">
        <parameters>
          <retval type="Boolean"/>
        </parameters>
      </function>
      <function name="IsEnabledLinked" visibility="protected" procflags="override" file="Vcl.Menus.pas" line="57">
        <parameters>
          <retval type="Boolean"/>
        </parameters>
      </function>
      <function name="IsHelpContextLinked" visibility="protected" procflags="override" file="Vcl.Menus.pas" line="58">
        <parameters>
          <retval type="Boolean"/>
        </parameters>
      </function>
      <function name="IsHintLinked" visibility="protected" procflags="override" file="Vcl.Menus.pas" line="59">
        <parameters>
          <retval type="Boolean"/>
        </parameters>
      </function>
      <function name="IsGroupIndexLinked" visibility="protected" procflags="override" file="Vcl.Menus.pas" line="60">
        <parameters>
          <retval type="Boolean"/>
        </parameters>
      </function>
      <function name="IsImageIndexLinked" visibility="protected" procflags="override" file="Vcl.Menus.pas" line="61">
        <parameters>
          <retval type="Boolean"/>
        </parameters>
      </function>
      <function name="IsImageNameLinked" visibility="protected" procflags="override" file="Vcl.Menus.pas" line="62">
        <parameters>
          <retval type="Boolean"/>
        </parameters>
      </function>
      <function name="IsShortCutLinked" visibility="protected" procflags="override" file="Vcl.Menus.pas" line="63">
        <parameters>
          <retval type="Boolean"/>
        </parameters>
      </function>
      <function name="IsVisibleLinked" visibility="protected" procflags="override" file="Vcl.Menus.pas" line="64">
        <parameters>
          <retval type="Boolean"/>
        </parameters>
      </function>
      <function name="IsOnExecuteLinked" visibility="protected" procflags="override" file="Vcl.Menus.pas" line="65">
        <parameters>
          <retval type="Boolean"/>
        </parameters>
      </function>
      <procedure name="SetAutoCheck" visibility="protected" procflags="override" file="Vcl.Menus.pas" line="66">
        <parameters>
          <parameter name="Value" type="Boolean"/>
        </parameters>
      </procedure>
      <procedure name="SetCaption" visibility="protected" procflags="override" file="Vcl.Menus.pas" line="67">
        <parameters>
          <parameter name="Value" type="string" paramflags="const"/>
        </parameters>
      </procedure>
      <procedure name="SetChecked" visibility="protected" procflags="override" file="Vcl.Menus.pas" line="68">
        <parameters>
          <parameter name="Value" type="Boolean"/>
        </parameters>
      </procedure>
      <procedure name="SetEnabled" visibility="protected" procflags="override" file="Vcl.Menus.pas" line="69">
        <parameters>
          <parameter name="Value" type="Boolean"/>
        </parameters>
      </procedure>
      <procedure name="SetHelpContext" visibility="protected" procflags="override" file="Vcl.Menus.pas" line="70">
        <parameters>
          <parameter name="Value" type="THelpContext"/>
        </parameters>
      </procedure>
      <procedure name="SetHint" visibility="protected" procflags="override" file="Vcl.Menus.pas" line="71">
        <parameters>
          <parameter name="Value" type="string" paramflags="const"/>
        </parameters>
      </procedure>
      <procedure name="SetImageIndex" visibility="protected" procflags="override" file="Vcl.Menus.pas" line="72">
        <parameters>
          <parameter name="Value" type="Integer"/>
        </parameters>
      </procedure>
      <procedure name="SetShortCut" visibility="protected" procflags="override" file="Vcl.Menus.pas" line="73">
        <parameters>
          <parameter name="Value" type="TShortCut"/>
        </parameters>
      </procedure>
      <procedure name="SetVisible" visibility="protected" procflags="override" file="Vcl.Menus.pas" line="74">
        <parameters>
          <parameter name="Value" type="Boolean"/>
        </parameters>
      </procedure>
      <procedure name="SetOnExecute" visibility="protected" procflags="override" file="Vcl.Menus.pas" line="75">
        <parameters>
          <parameter name="Value" type="TNotifyEvent"/>
        </parameters>
      </procedure>
    </members>
  </class>
  <classref name="TMenuActionLinkClass" ref="TMenuActionLink" file="Vcl.Menus.pas" line="78"/>
  <type name="TMenuHandle" type="cardinal" loBound="0" hiBound="-1" file="Winapi.Windows.pas" line="4070"/>
  <class name="TMenuItemEnumerator" file="Vcl.Menus.pas" line="96">
    <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="FIndex" type="Integer" visibility="private" size="4" offset="4" file="Vcl.Menus.pas" line="98"/>
      <field name="FMenuItem" type="TMenuItem" visibility="private" size="4" offset="8" file="Vcl.Menus.pas" line="99"/>
      <constructor name="Create" visibility="public" file="Vcl.Menus.pas" line="101">
        <parameters>
          <parameter name="AMenuItem" type="TMenuItem"/>
        </parameters>
      </constructor>
      <function name="GetCurrent" visibility="public" file="Vcl.Menus.pas" line="102">
        <parameters>
          <retval type="TMenuItem"/>
        </parameters>
      </function>
      <function name="MoveNext" visibility="public" file="Vcl.Menus.pas" line="103">
        <parameters>
          <retval type="Boolean"/>
        </parameters>
      </function>
      <property name="Current" visibility="public" read="GetCurrent" type="TMenuItem" file="Vcl.Menus.pas" line="104"/>
    </members>
  </class>
  <class name="TMenuItem" file="Vcl.Menus.pas" line="119">
    <ancestor name="TComponent" namespace="System.Classes">
      <interfaces>
        <implements name="IInterfaceComponentReference"/>
        <implements name="IInterface"/>
      </interfaces>
      <methodref name="GetComObject" visibility="private">
      </methodref>
      <methodref name="GetComponent" visibility="private">
      </methodref>
      <methodref name="GetComponentCount" visibility="private">
      </methodref>
      <methodref name="GetComponentIndex" visibility="private">
      </methodref>
      <methodref name="Insert" visibility="private">
      </methodref>
      <methodref name="ReadLeft" visibility="private">
      </methodref>
      <methodref name="ReadTop" visibility="private">
      </methodref>
      <methodref name="Remove" visibility="private">
      </methodref>
      <methodref name="RemoveNotification" visibility="private">
      </methodref>
      <methodref name="SetComponentIndex" visibility="private">
      </methodref>
      <methodref name="SetReference" visibility="private">
      </methodref>
      <methodref name="WriteLeft" visibility="private">
      </methodref>
      <methodref name="WriteTop" visibility="private">
      </methodref>
      <methodref name="IntfGetComponent" visibility="private">
      </methodref>
      <methodref name="DoGetDeltaStreams" visibility="private">
      </methodref>
      <methodref name="ReadDeltaStream" visibility="private">
      </methodref>
      <methodref name="ReadDeltaState" visibility="private">
      </methodref>
      <methodref name="FindSortedComponent" visibility="private">
      </methodref>
      <methodref name="AddSortedComponent" visibility="private">
      </methodref>
      <methodref name="RemoveSortedComponent" visibility="private" procflags="inline">
      </methodref>
      <methodref name="Create@" visibility="class private" procflags="class constructor noself">
      </methodref>
      <methodref name="AsyncSchedule" visibility="protected" procflags="virtual">
      </methodref>
      <methodref name="ChangeName" visibility="protected">
      </methodref>
      <methodref name="DefineProperties" visibility="protected" procflags="override">
      </methodref>
      <methodref name="GetChildren" visibility="protected" procflags="dynamic">
      </methodref>
      <methodref name="GetChildOwner" visibility="protected" procflags="dynamic">
      </methodref>
      <methodref name="GetChildParent" visibility="protected" procflags="dynamic">
      </methodref>
      <methodref name="GetOwner" visibility="protected" procflags="override">
      </methodref>
      <methodref name="Loaded" visibility="protected" procflags="virtual">
      </methodref>
      <methodref name="Notification" visibility="protected" procflags="virtual">
      </methodref>
      <methodref name="GetDeltaStreams" visibility="protected" procflags="dynamic">
      </methodref>
      <methodref name="ReadState" visibility="protected" procflags="virtual">
      </methodref>
      <methodref name="CanObserve" visibility="protected" procflags="virtual">
      </methodref>
      <methodref name="ObserverAdded" visibility="protected" procflags="virtual">
      </methodref>
      <methodref name="GetObservers" visibility="protected" procflags="virtual">
      </methodref>
      <methodref name="SetAncestor" visibility="protected">
      </methodref>
      <methodref name="SetDesigning" visibility="protected">
      </methodref>
      <methodref name="SetInline" visibility="protected">
      </methodref>
      <methodref name="SetDesignInstance" visibility="protected">
      </methodref>
      <methodref name="SetName" visibility="protected" procflags="virtual">
      </methodref>
      <methodref name="SetChildOrder" visibility="protected" procflags="dynamic">
      </methodref>
      <methodref name="SetParentComponent" visibility="protected" procflags="dynamic">
      </methodref>
      <methodref name="Updating" visibility="protected" procflags="dynamic">
      </methodref>
      <methodref name="Updated" visibility="protected" procflags="dynamic">
      </methodref>
      <methodref name="UpdateRegistry" visibility="protected" procflags="class virtual">
      </methodref>
      <methodref name="ValidateRename" visibility="protected" procflags="virtual">
      </methodref>
      <methodref name="ValidateContainer" visibility="protected" procflags="dynamic">
      </methodref>
      <methodref name="ValidateInsert" visibility="protected" procflags="dynamic">
      </methodref>
      <methodref name="WriteState" visibility="protected" procflags="virtual">
      </methodref>
      <methodref name="RemoveFreeNotifications" visibility="protected">
      </methodref>
      <methodref name="QueryInterface" visibility="protected" procflags="virtual">
      </methodref>
      <methodref name="_AddRef" visibility="protected">
      </methodref>
      <methodref name="_Release" visibility="protected">
      </methodref>
      <methodref name="GetTypeInfoCount" visibility="protected">
      </methodref>
      <methodref name="GetTypeInfo" visibility="protected">
      </methodref>
      <methodref name="GetIDsOfNames" visibility="protected">
      </methodref>
      <methodref name="Invoke" visibility="protected">
      </methodref>
      <eventref name="OnGetDeltaStreams" visibility="protected">
      </eventref>
      <methodref name="Create" visibility="public" procflags="constructor virtual">
      </methodref>
      <methodref name="Destroy" visibility="public" procflags="destructor override">
      </methodref>
      <methodref name="BeforeDestruction" visibility="public" procflags="override">
      </methodref>
      <methodref name="BeginInvoke" visibility="public" procflags="overload">
      </methodref>
      <methodref name="BeginInvoke" visibility="public" procflags="overload">
      </methodref>
      <methodref name="BeginInvoke" visibility="public" procflags="overload">
      </methodref>
      <methodref name="BeginInvoke" visibility="public" procflags="overload">
      </methodref>
      <methodref name="BeginInvoke" visibility="public" procflags="overload">
      </methodref>
      <methodref name="BeginInvoke" visibility="public" procflags="overload">
      </methodref>
      <methodref name="BeginInvoke" visibility="public" procflags="overload">
      </methodref>
      <methodref name="BeginInvoke" visibility="public" procflags="overload">
      </methodref>
      <methodref name="EndInvoke" visibility="public" procflags="overload">
      </methodref>
      <methodref name="EndInvoke" visibility="public" procflags="overload">
      </methodref>
      <methodref name="EndFunctionInvoke" visibility="public">
      </methodref>
      <methodref name="DestroyComponents" visibility="public">
      </methodref>
      <methodref name="Destroying" visibility="public">
      </methodref>
      <methodref name="ExecuteAction" visibility="public" procflags="dynamic">
      </methodref>
      <methodref name="FindComponent" visibility="public">
      </methodref>
      <methodref name="FreeNotification" visibility="public">
      </methodref>
      <methodref name="RemoveFreeNotification" visibility="public">
      </methodref>
      <methodref name="FreeOnRelease" visibility="public">
      </methodref>
      <methodref name="GetEnumerator" visibility="public" procflags="inline">
      </methodref>
      <methodref name="GetParentComponent" visibility="public" procflags="dynamic">
      </methodref>
      <methodref name="GetNamePath" visibility="public" procflags="override">
      </methodref>
      <methodref name="HasParent" visibility="public" procflags="dynamic">
      </methodref>
      <methodref name="InsertComponent" visibility="public">
      </methodref>
      <methodref name="RemoveComponent" visibility="public">
      </methodref>
      <methodref name="SetSubComponent" visibility="public">
      </methodref>
      <methodref name="SafeCallException" visibility="public" procflags="override">
      </methodref>
      <methodref name="UpdateAction" visibility="public" procflags="virtual">
      </methodref>
      <methodref name="IsImplementorOf" visibility="public">
      </methodref>
      <methodref name="ReferenceInterface" visibility="public">
      </methodref>
      <propertyref name="ComObject" visibility="public">
      </propertyref>
      <propertyref name="Components" visibility="public">
      </propertyref>
      <propertyref name="ComponentCount" visibility="public">
      </propertyref>
      <propertyref name="ComponentIndex" visibility="public">
      </propertyref>
      <propertyref name="ComponentState" visibility="public">
      </propertyref>
      <propertyref name="ComponentStyle" visibility="public">
      </propertyref>
      <propertyref name="DesignInfo" visibility="public">
      </propertyref>
      <propertyref name="Owner" visibility="public">
      </propertyref>
      <propertyref name="VCLComObject" visibility="public">
      </propertyref>
      <propertyref name="Observers" visibility="public">
      </propertyref>
      <propertyref name="Name" visibility="published">
      </propertyref>
      <propertyref name="Tag" visibility="published">
      </propertyref>
      <ancestor name="TPersistent" namespace="System.Classes">
        <methodref name="AssignError" visibility="private">
        </methodref>
        <methodref name="AssignTo" visibility="protected" procflags="virtual">
        </methodref>
        <methodref name="DefineProperties" visibility="protected" procflags="virtual">
        </methodref>
        <methodref name="GetOwner" visibility="protected" procflags="dynamic">
        </methodref>
        <methodref name="Destroy" visibility="public" procflags="destructor override">
        </methodref>
        <methodref name="Assign" visibility="public" procflags="virtual">
        </methodref>
        <methodref name="GetNamePath" visibility="public" procflags="dynamic">
        </methodref>
        <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>
      </ancestor>
    </ancestor>
    <members>
      <const name="OriginalPPI" visibility="published" type="Integer" file="Vcl.Menus.pas" line="122">
        <value>
          $60
        </value>
      </const>
      <const name="ShortCutGap" visibility="published" type="Integer" file="Vcl.Menus.pas" line="123">
        <value>
          $C
        </value>
      </const>
      <field name="FCaption" type="string" visibility="private" size="4" offset="64" file="Vcl.Menus.pas" line="125"/>
      <field name="FChecked" type="Boolean" visibility="private" size="1" offset="68" file="Vcl.Menus.pas" line="126"/>
      <field name="FEnabled" type="Boolean" visibility="private" size="1" offset="69" file="Vcl.Menus.pas" line="127"/>
      <field name="FDefault" type="Boolean" visibility="private" size="1" offset="70" file="Vcl.Menus.pas" line="128"/>
      <field name="FAutoHotkeys" type="TMenuItemAutoFlag" visibility="private" size="1" offset="71" file="Vcl.Menus.pas" line="129"/>
      <field name="FAutoLineReduction" type="TMenuItemAutoFlag" visibility="private" size="1" offset="72" file="Vcl.Menus.pas" line="130"/>
      <field name="FRadioItem" type="Boolean" visibility="private" size="1" offset="73" file="Vcl.Menus.pas" line="131"/>
      <field name="FVisible" type="Boolean" visibility="private" size="1" offset="74" file="Vcl.Menus.pas" line="132"/>
      <field name="FGroupIndex" type="Byte" visibility="private" size="1" offset="75" file="Vcl.Menus.pas" line="133"/>
      <field name="FImageIndex" type="TImageIndex" visibility="private" size="4" offset="76" file="Vcl.Menus.pas" line="134"/>
      <field name="FImageName" type="TImageName" visibility="private" size="4" offset="80" file="Vcl.Menus.pas" line="135"/>
      <field name="FActionLink" type="TMenuActionLink" visibility="private" size="4" offset="84" file="Vcl.Menus.pas" line="136"/>
      <field name="FBreak" type="TMenuBreak" visibility="private" size="1" offset="88" file="Vcl.Menus.pas" line="137"/>
      <field name="FBitmap" type="TBitmap" visibility="private" size="4" offset="92" file="Vcl.Menus.pas" line="138"/>
      <field name="FCommand" type="Word" visibility="private" size="2" offset="96" file="Vcl.Menus.pas" line="139"/>
      <field name="FHelpContext" type="THelpContext" visibility="private" size="4" offset="100" file="Vcl.Menus.pas" line="140"/>
      <field name="FHint" type="string" visibility="private" size="4" offset="104" file="Vcl.Menus.pas" line="141"/>
      <field name="FItems" type="TList" visibility="private" size="4" offset="108" file="Vcl.Menus.pas" line="142"/>
      <field name="FShortCut" type="TShortCut" visibility="private" size="2" offset="112" file="Vcl.Menus.pas" line="143"/>
      <field name="FParent" type="TMenuItem" visibility="private" size="4" offset="116" file="Vcl.Menus.pas" line="144"/>
      <field name="FMerged" type="TMenuItem" visibility="private" size="4" offset="120" file="Vcl.Menus.pas" line="145"/>
      <field name="FMergedWith" type="TMenuItem" visibility="private" size="4" offset="124" file="Vcl.Menus.pas" line="146"/>
      <field name="FMenu" type="TMenu" visibility="private" size="4" offset="128" file="Vcl.Menus.pas" line="147"/>
      <field name="FStreamedRebuild" type="Boolean" visibility="private" size="1" offset="132" file="Vcl.Menus.pas" line="148"/>
      <field name="FImageChangeLink" type="TChangeLink" visibility="private" size="4" offset="136" file="Vcl.Menus.pas" line="149"/>
      <field name="FSubMenuImages" type="TCustomImageList" visibility="private" size="4" offset="140" file="Vcl.Menus.pas" line="150"/>
      <field name="FOnChange" type="TMenuChangeEvent" visibility="private" size="8" offset="144" file="Vcl.Menus.pas" line="151"/>
      <field name="FOnClick" type="TNotifyEvent" visibility="private" size="8" offset="152" file="Vcl.Menus.pas" line="152"/>
      <field name="FOnDrawItem" type="TMenuDrawItemEvent" visibility="private" size="8" offset="160" file="Vcl.Menus.pas" line="153"/>
      <field name="FOnAdvancedDrawItem" type="TAdvancedMenuDrawItemEvent" visibility="private" size="8" offset="168" file="Vcl.Menus.pas" line="154"/>
      <field name="FOnMeasureItem" type="TMenuMeasureItemEvent" visibility="private" size="8" offset="176" file="Vcl.Menus.pas" line="155"/>
      <field name="FAutoCheck" type="Boolean" visibility="private" size="1" offset="184" file="Vcl.Menus.pas" line="156"/>
      <field name="FHandle" type="HMENU" visibility="private" size="4" offset="188" file="Vcl.Menus.pas" line="157"/>
      <procedure name="AppendTo" visibility="private" file="Vcl.Menus.pas" line="158">
        <parameters>
          <parameter name="Menu" type="HMENU"/>
          <parameter name="ARightToLeft" type="Boolean"/>
        </parameters>
      </procedure>
      <procedure name="DoActionChange" visibility="private" file="Vcl.Menus.pas" line="159">
        <parameters>
          <parameter name="Sender" type="TObject"/>
        </parameters>
      </procedure>
      <procedure name="ReadShortCutText" visibility="private" file="Vcl.Menus.pas" line="160">
        <devnotes>
          ITERATOR_OBJECTS
          ITERATOR_OBJECTS
          ITERATOR_OBJECTS
        </devnotes>
        <parameters>
          <parameter name="Reader" type="TReader"/>
        </parameters>
      </procedure>
      <procedure name="MergeWith" visibility="private" file="Vcl.Menus.pas" line="161">
        <parameters>
          <parameter name="Menu" type="TMenuItem"/>
        </parameters>
      </procedure>
      <procedure name="RebuildHandle" visibility="private" file="Vcl.Menus.pas" line="162">
      </procedure>
      <procedure name="PopulateMenu" visibility="private" file="Vcl.Menus.pas" line="163">
      </procedure>
      <procedure name="SubItemChanged" visibility="private" file="Vcl.Menus.pas" line="164">
        <parameters>
          <parameter name="Sender" type="TObject"/>
          <parameter name="Source" type="TMenuItem"/>
          <parameter name="Rebuild" type="Boolean"/>
        </parameters>
      </procedure>
      <procedure name="TurnSiblingsOff" visibility="private" file="Vcl.Menus.pas" line="165">
      </procedure>
      <procedure name="VerifyGroupIndex" visibility="private" file="Vcl.Menus.pas" line="166">
        <parameters>
          <parameter name="Position" type="Integer"/>
          <parameter name="Value" type="Byte"/>
        </parameters>
      </procedure>
      <function name="GetAction" visibility="private" file="Vcl.Menus.pas" line="167">
        <parameters>
          <retval type="TBasicAction"/>
        </parameters>
      </function>
      <function name="GetBitmap" visibility="private" file="Vcl.Menus.pas" line="168">
        <parameters>
          <retval type="TBitmap"/>
        </parameters>
      </function>
      <procedure name="SetAction" visibility="private" file="Vcl.Menus.pas" line="169">
        <parameters>
          <parameter name="Value" type="TBasicAction"/>
        </parameters>
      </procedure>
      <procedure name="SetBitmap" visibility="private" file="Vcl.Menus.pas" line="170">
        <parameters>
          <parameter name="Value" type="TBitmap"/>
        </parameters>
      </procedure>
      <procedure name="SetSubMenuImages" visibility="private" file="Vcl.Menus.pas" line="171">
        <parameters>
          <parameter name="Value" type="TCustomImageList"/>
        </parameters>
      </procedure>
      <procedure name="ImageListChange" visibility="private" file="Vcl.Menus.pas" line="172">
        <parameters>
          <parameter name="Sender" type="TObject"/>
        </parameters>
      </procedure>
      <procedure name="InitiateActions" visibility="private" file="Vcl.Menus.pas" line="173">
      </procedure>
      <function name="IsCaptionStored" visibility="private" file="Vcl.Menus.pas" line="174">
        <parameters>
          <retval type="Boolean"/>
        </parameters>
      </function>
      <function name="IsCheckedStored" visibility="private" file="Vcl.Menus.pas" line="175">
        <parameters>
          <retval type="Boolean"/>
        </parameters>
      </function>
      <function name="IsEnabledStored" visibility="private" file="Vcl.Menus.pas" line="176">
        <parameters>
          <retval type="Boolean"/>
        </parameters>
      </function>
      <function name="IsHelpContextStored" visibility="private" file="Vcl.Menus.pas" line="177">
        <parameters>
          <retval type="Boolean"/>
        </parameters>
      </function>
      <function name="IsHintStored" visibility="private" file="Vcl.Menus.pas" line="178">
        <parameters>
          <retval type="Boolean"/>
        </parameters>
      </function>
      <function name="IsImageIndexStored" visibility="private" file="Vcl.Menus.pas" line="179">
        <parameters>
          <retval type="Boolean"/>
        </parameters>
      </function>
      <function name="IsImageNameStored" visibility="private" file="Vcl.Menus.pas" line="180">
        <parameters>
          <retval type="Boolean"/>
        </parameters>
      </function>
      <function name="IsOnClickStored" visibility="private" file="Vcl.Menus.pas" line="181">
        <parameters>
          <retval type="Boolean"/>
        </parameters>
      </function>
      <function name="IsShortCutStored" visibility="private" file="Vcl.Menus.pas" line="182">
        <parameters>
          <retval type="Boolean"/>
        </parameters>
      </function>
      <function name="IsVisibleStored" visibility="private" file="Vcl.Menus.pas" line="183">
        <parameters>
          <retval type="Boolean"/>
        </parameters>
      </function>
      <function name="InternalRethinkHotkeys" visibility="private" file="Vcl.Menus.pas" line="184">
        <parameters>
          <parameter name="ForceRethink" type="Boolean"/>
          <retval type="Boolean"/>
        </parameters>
      </function>
      <procedure name="SetAutoHotkeys" visibility="private" file="Vcl.Menus.pas" line="185">
        <parameters>
          <parameter name="Value" type="TMenuItemAutoFlag" paramflags="const"/>
        </parameters>
      </procedure>
      <function name="InternalRethinkLines" visibility="private" file="Vcl.Menus.pas" line="186">
        <parameters>
          <parameter name="ForceRethink" type="Boolean"/>
          <retval type="Boolean"/>
        </parameters>
      </function>
      <procedure name="SetAutoLineReduction" visibility="private" file="Vcl.Menus.pas" line="187">
        <parameters>
          <parameter name="Value" type="TMenuItemAutoFlag" paramflags="const"/>
        </parameters>
      </procedure>
      <function name="GetDevicePPI" visibility="private" file="Vcl.Menus.pas" line="188">
        <parameters>
          <retval type="Integer"/>
        </parameters>
      </function>
      <procedure name="ActionChange" visibility="protected" procflags="dynamic" file="Vcl.Menus.pas" line="193">
        <parameters>
          <parameter name="Sender" type="TObject"/>
          <parameter name="CheckDefaults" type="Boolean"/>
        </parameters>
      <devnotes><summary>
Embarcadero Technologies does not currently have any additional information.


</summary></devnotes></procedure>
      <procedure name="AdvancedDrawItem" visibility="protected" procflags="virtual" file="Vcl.Menus.pas" line="194">
        <parameters>
          <parameter name="ACanvas" type="TCanvas"/>
          <parameter name="ARect" type="TRect"/>
          <parameter name="State" type="TOwnerDrawState"/>
          <parameter name="TopLevel" type="Boolean"/>
        </parameters>
      <devnotes><summary>
Embarcadero Technologies does not currently have any additional information.


</summary></devnotes></procedure>
      <procedure name="AssignTo" visibility="protected" procflags="override" file="Vcl.Menus.pas" line="196">
        <parameters>
          <parameter name="Dest" type="TPersistent"/>
        </parameters>
      <devnotes><summary>
Copies the properties of an object to a destination object.
Vcl.Menus.TMenuItem.AssignTo inherits from System.Classes.TPersistent.AssignTo. All content below this line refers to System.Classes.TPersistent.AssignTo.
Copies the properties of an object to a destination object.
Override the AssignTo method to extend the functionality of the Assign method of destination objects so that they handle newly created object classes. When defining a new object class, override the Assign method for every existing object class that should be able to copy its properties to the new class. Override the AssignTo method for every existing class to which the new class can copy.
The Assign method of TPersistent calls AssignTo if the descendant object does not succeed in copying the properties of a source object. The AssignTo method defined by TPersistent raises an EConvertError exception. 
For example, given the following code in which A and B are instance variables:

A.Assign(B); {Delphi}

A-&gt;Assign(B); // C++

if A knows how to handle B, then it does so and returns. If A doesn't know how to handle B's type, execution will trickle to the TPersistent version of Assign, which calls:

B.AssignTo(A); {Delphi}

B-&gt;AssignTo(A); // C++

If B knows how to copy to A, the assignment succeeds. Otherwise, TPersistent raises an exception.
</summary></devnotes></procedure>
      <procedure name="DefineProperties" visibility="protected" procflags="override" file="Vcl.Menus.pas" line="197">
        <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.
Vcl.Menus.TMenuItem.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="DoDrawText" visibility="protected" file="Vcl.Menus.pas" line="198">
        <parameters>
          <parameter name="ACanvas" type="TCanvas"/>
          <parameter name="ACaption" type="string" paramflags="const"/>
          <parameter name="Rect" type="TRect" paramflags="var"/>
          <parameter name="Selected" type="Boolean"/>
          <parameter name="Flags" type="Integer"/>
        </parameters>
      <devnotes><summary>
Embarcadero Technologies does not currently have any additional information.


</summary></devnotes></procedure>
      <procedure name="DrawItem" visibility="protected" procflags="virtual" file="Vcl.Menus.pas" line="200">
        <parameters>
          <parameter name="ACanvas" type="TCanvas"/>
          <parameter name="ARect" type="TRect"/>
          <parameter name="Selected" type="Boolean"/>
        </parameters>
      <devnotes><summary>
Embarcadero Technologies does not currently have any additional information.


</summary></devnotes></procedure>
      <function name="GetActionLinkClass" visibility="protected" procflags="dynamic" file="Vcl.Menus.pas" line="201">
        <parameters>
          <retval type="TMenuActionLinkClass"/>
        </parameters>
      <devnotes><summary>
Embarcadero Technologies does not currently have any additional information.


</summary></devnotes></function>
      <function name="GetHandle" visibility="protected" file="Vcl.Menus.pas" line="202">
        <parameters>
          <retval type="HMENU"/>
        </parameters>
      <devnotes><summary>
Embarcadero Technologies does not currently have any additional information.


</summary></devnotes></function>
      <function name="GetCount" visibility="protected" file="Vcl.Menus.pas" line="203">
        <parameters>
          <retval type="Integer"/>
        </parameters>
      <devnotes><summary>
Embarcadero Technologies does not currently have any additional information.


</summary></devnotes></function>
      <function name="GetItem" visibility="protected" file="Vcl.Menus.pas" line="204">
        <parameters>
          <parameter name="Index" type="Integer"/>
          <retval type="TMenuItem"/>
        </parameters>
      <devnotes><summary>
Embarcadero Technologies does not currently have any additional information.


</summary></devnotes></function>
      <function name="GetMenuIndex" visibility="protected" file="Vcl.Menus.pas" line="205">
        <parameters>
          <retval type="Integer"/>
        </parameters>
      <devnotes><summary>
Embarcadero Technologies does not currently have any additional information.


</summary></devnotes></function>
      <function name="GetAutoHotkeys" visibility="protected" file="Vcl.Menus.pas" line="206">
        <parameters>
          <retval type="Boolean"/>
        </parameters>
      <devnotes><summary>
Embarcadero Technologies does not currently have any additional information.


</summary></devnotes></function>
      <function name="GetAutoLineReduction" visibility="protected" file="Vcl.Menus.pas" line="207">
        <parameters>
          <retval type="Boolean"/>
        </parameters>
      <devnotes><summary>
Embarcadero Technologies does not currently have any additional information.


</summary></devnotes></function>
      <function name="InsertNewLine" visibility="protected" file="Vcl.Menus.pas" line="208">
        <parameters>
          <parameter name="ABefore" type="Boolean"/>
          <parameter name="AItem" type="TMenuItem"/>
          <retval type="Integer"/>
        </parameters>
      <devnotes><summary>
Embarcadero Technologies does not currently have any additional information.


</summary></devnotes></function>
      <procedure name="MeasureItem" visibility="protected" procflags="virtual" file="Vcl.Menus.pas" line="209">
        <parameters>
          <parameter name="ACanvas" type="TCanvas"/>
          <parameter name="Width" type="Integer" paramflags="var"/>
          <parameter name="Height" type="Integer" paramflags="var"/>
        </parameters>
      <devnotes><summary>
Embarcadero Technologies does not currently have any additional information.


</summary></devnotes></procedure>
      <procedure name="MenuChanged" visibility="protected" procflags="virtual" file="Vcl.Menus.pas" line="210">
        <parameters>
          <parameter name="Rebuild" type="Boolean"/>
        </parameters>
      <devnotes><summary>
Embarcadero Technologies does not currently have any additional information.


</summary></devnotes></procedure>
      <procedure name="Loaded" visibility="protected" procflags="override" file="Vcl.Menus.pas" line="211">
      <devnotes><summary>
Initializes the component after the form file has been read into memory.
Vcl.Menus.TMenuItem.Loaded inherits from System.Classes.TComponent.Loaded. All content below this line refers to System.Classes.TComponent.Loaded.
Initializes the component after the form file has been read into memory.
Do not call the protected Loaded method. The streaming system calls this method after it loads the component's form from a stream.
When the streaming system loads a form or data module from its form file, it first constructs the form component by calling its constructor, then reads its property values from the form file. After reading all the property values for all the components, the streaming system calls the Loaded methods of each component in the order the components were created. This gives the components a chance to initialize any data that depends on the values of other components or other parts of itself.

Note:  All references to sibling components are resolved by the time Loaded is called. Loaded is the first place that sibling pointers can be used after being streamed in.
As implemented in TComponent, Loaded clears the csLoading flag in the ComponentState property, indicating that the component is no longer loading.

Warning: Loaded may be called multiple times on inherited forms. It is called every time a level of inheritance is streamed in. Do not allocate memory in an overridden Loaded method without first checking that the memory has not been allocated in a previous call.</summary></devnotes></procedure>
      <procedure name="Notification" visibility="protected" procflags="override" file="Vcl.Menus.pas" line="212">
        <parameters>
          <parameter name="AComponent" type="TComponent"/>
          <parameter name="Operation" type="TOperation"/>
        </parameters>
      <devnotes><summary>
Forwards notification messages to all owned components.
Vcl.Menus.TMenuItem.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>
      <procedure name="SetBreak" visibility="protected" file="Vcl.Menus.pas" line="214">
        <parameters>
          <parameter name="Value" type="TMenuBreak"/>
        </parameters>
      <devnotes><summary>
Embarcadero Technologies does not currently have any additional information.


</summary></devnotes></procedure>
      <procedure name="SetCaption" visibility="protected" file="Vcl.Menus.pas" line="215">
        <parameters>
          <parameter name="Value" type="string" paramflags="const"/>
        </parameters>
      <devnotes><summary>
Embarcadero Technologies does not currently have any additional information.


</summary></devnotes></procedure>
      <procedure name="SetChecked" visibility="protected" file="Vcl.Menus.pas" line="216">
        <parameters>
          <parameter name="Value" type="Boolean"/>
        </parameters>
      <devnotes><summary>
Embarcadero Technologies does not currently have any additional information.


</summary></devnotes></procedure>
      <procedure name="SetChildOrder" visibility="protected" procflags="override" file="Vcl.Menus.pas" line="217">
        <parameters>
          <parameter name="Child" type="TComponent"/>
          <parameter name="Order" type="Integer"/>
        </parameters>
      <devnotes><summary>
Sets the visual ordering of a child control.
Vcl.Menus.TMenuItem.SetChildOrder inherits from System.Classes.TComponent.SetChildOrder. All content below this line refers to System.Classes.TComponent.SetChildOrder.
Sets the visual ordering of a child control.
SetChildOrder is used internally in the component streaming system. It is not necessary to call it directly. 
Derived classes override this method to actually implement the ordering. TWinControl uses this ordering information to Z-align the controls. 
</summary></devnotes></procedure>
      <procedure name="SetDefault" visibility="protected" file="Vcl.Menus.pas" line="218">
        <parameters>
          <parameter name="Value" type="Boolean"/>
        </parameters>
      <devnotes><summary>
Embarcadero Technologies does not currently have any additional information.


</summary></devnotes></procedure>
      <procedure name="SetEnabled" visibility="protected" file="Vcl.Menus.pas" line="219">
        <parameters>
          <parameter name="Value" type="Boolean"/>
        </parameters>
      <devnotes><summary>
Embarcadero Technologies does not currently have any additional information.


</summary></devnotes></procedure>
      <procedure name="SetGroupIndex" visibility="protected" file="Vcl.Menus.pas" line="220">
        <parameters>
          <parameter name="Value" type="Byte"/>
        </parameters>
      <devnotes><summary>
Embarcadero Technologies does not currently have any additional information.


</summary></devnotes></procedure>
      <procedure name="SetImageIndex" visibility="protected" file="Vcl.Menus.pas" line="221">
        <parameters>
          <parameter name="Value" type="TImageIndex"/>
        </parameters>
      <devnotes><summary>
Embarcadero Technologies does not currently have any additional information.


</summary></devnotes></procedure>
      <procedure name="SetImageName" visibility="protected" file="Vcl.Menus.pas" line="222">
        <parameters>
          <parameter name="Value" type="TImageName" paramflags="const"/>
        </parameters>
      <devnotes><summary>
Embarcadero Technologies does not currently have any additional information.


</summary></devnotes></procedure>
      <procedure name="SetMenuIndex" visibility="protected" file="Vcl.Menus.pas" line="223">
        <parameters>
          <parameter name="Value" type="Integer"/>
        </parameters>
      <devnotes><summary>
Embarcadero Technologies does not currently have any additional information.


</summary></devnotes></procedure>
      <procedure name="SetRadioItem" visibility="protected" file="Vcl.Menus.pas" line="224">
        <parameters>
          <parameter name="Value" type="Boolean"/>
        </parameters>
      <devnotes><summary>
Embarcadero Technologies does not currently have any additional information.


</summary></devnotes></procedure>
      <procedure name="SetShortCut" visibility="protected" file="Vcl.Menus.pas" line="225">
        <parameters>
          <parameter name="Value" type="TShortCut"/>
        </parameters>
      <devnotes><summary>
Embarcadero Technologies does not currently have any additional information.


</summary></devnotes></procedure>
      <procedure name="SetVisible" visibility="protected" file="Vcl.Menus.pas" line="226">
        <parameters>
          <parameter name="Value" type="Boolean"/>
        </parameters>
      <devnotes><summary>
Embarcadero Technologies does not currently have any additional information.


</summary></devnotes></procedure>
      <procedure name="UpdateItems" visibility="protected" file="Vcl.Menus.pas" line="227">
        <devnotes><summary>
Iterates through all the menu items of this menu item and updates them.
UpdateItems is called whenever the image list attached to the menu is changed or when OwnerDraw is changed.
</summary></devnotes>
      </procedure>
      <procedure name="CheckImageIndex" visibility="protected" file="Vcl.Menus.pas" line="228">
      <devnotes><summary>
Embarcadero Technologies does not currently have any additional information.


</summary></devnotes></procedure>
      <property name="ActionLink" visibility="protected" read="FActionLink" write="FActionLink" type="TMenuActionLink" file="Vcl.Menus.pas" line="229"><devnotes><summary>
Embarcadero Technologies does not currently have any additional information.


</summary></devnotes></property>
      <property name="Merged" visibility="protected" read="FMerged" type="TMenuItem" file="Vcl.Menus.pas" line="230"><devnotes><summary>
Embarcadero Technologies does not currently have any additional information.


</summary></devnotes></property>
      <constructor name="Create" visibility="public" file="Vcl.Menus.pas" line="232">
        <parameters>
          <parameter name="AOwner" type="TComponent"/>
        </parameters>
      <devnotes><summary>
Creates an instance of TMenuItem.
Use Create to create a menu item at runtime. Menu items defined at design time using the Menu designer are created automatically.
AOwner is the component that is responsible for freeing the menu item. It becomes the value of the Owner property.
</summary></devnotes></constructor>
      <destructor name="Destroy" visibility="public" file="Vcl.Menus.pas" line="233">
        <parameters>
        </parameters>
      <devnotes><summary>
Destroys an instance of TMenuItem.
Do not call Destroy directly in an application. Instead, call Free. Free verifies that the TMenuItem reference is not nil, and only then calls Destroy.
</summary></devnotes></destructor>
      <procedure name="InitiateAction" visibility="public" procflags="virtual" file="Vcl.Menus.pas" line="234">
      <devnotes><summary>
Calls the action link's Update method if the menu item is associated with an action link.
InitiateAction calls the action link, if there is one for the menu item, to update the association between the action and the menu item.
</summary></devnotes></procedure>
      <procedure name="Insert" visibility="public" file="Vcl.Menus.pas" line="235">
        <parameters>
          <parameter name="Index" type="Integer"/>
          <parameter name="Item" type="TMenuItem"/>
        </parameters>
      <devnotes><summary>
Inserts a menu item into a specified position in the Items array.
Use Insert to insert a new menu item to the dropdown menu for this menu item. If this menu item is the value of the Items property of a main menu or pop-up menu, Insert inserts an item into that menu. Specify the new menu item to add as the value of the Item parameter, and the position in the Items array as the value of the Index parameter.
</summary></devnotes></procedure>
      <procedure name="Delete" visibility="public" file="Vcl.Menus.pas" line="236">
        <parameters>
          <parameter name="Index" type="Integer"/>
        </parameters>
      <devnotes><summary>
Removes a menu item from the Items property array.
Call Delete to remove a menu item and all its submenus from a menu. The Index parameter is the index of the item to be deleted, where 0 specifies the first item in the menu, 1 specifies the second item, and so on.
Delete does not free the removed item's memory. To remove an item from the menu and free its memory, call the Free method in the item you want to remove.
To temporarily hide a menu item, without deleting it, use the Visible property.
</summary></devnotes></procedure>
      <procedure name="Clear" visibility="public" file="Vcl.Menus.pas" line="237">
      <devnotes><summary>
Removes and frees all menu items listed in the Items property.
Use Clear to free all the items listed in the Items property array.
</summary></devnotes></procedure>
      <procedure name="Click" visibility="public" procflags="virtual" file="Vcl.Menus.pas" line="238">
      <devnotes><summary>
Simulates a mouse click.
Click generates an OnClick event, as if the user had clicked the menu item. Unlike a real mouse click, Click does not generate a WM_COMMAND message to the window associated with the menu.
Component writers can override click to provide a different response when the user selects the menu item.
</summary></devnotes></procedure>
      <function name="Find" visibility="public" file="Vcl.Menus.pas" line="239">
        <parameters>
          <parameter name="ACaption" type="string"/>
          <retval type="TMenuItem"/>
        </parameters>
      <devnotes><summary>
Locates a menu item in the Items property array given its caption.
Use Find to locate the menu item in the Items property array with the caption specified by the ACaption parameter. Find ignores accelerator characters when comparing item captions to the ACaption parameter.
Find returns the first menu item in the Items property array with the specified caption. If no item is found, Find returns nil (Delphi) or NULL (C++).
</summary></devnotes></function>
      <function name="IndexOf" visibility="public" file="Vcl.Menus.pas" line="240">
        <parameters>
          <parameter name="Item" type="TMenuItem"/>
          <retval type="Integer"/>
        </parameters>
      <devnotes><summary>
Returns the position of a menu item within the Items array.
Call IndexOf to locate a menu item in the submenu headed by this menu item. IndexOf returns 0 for the first menu item, 1 for the second menu item, and so on. If the menu item is not in the submenu, IndexOf returns -1.

Note: IndexOf may not correspond to the position of the item in the menu the user sees if the menu includes some items that are not visible.</summary></devnotes></function>
      <function name="IsLine" visibility="public" file="Vcl.Menus.pas" line="241">
        <parameters>
          <retval type="Boolean"/>
        </parameters>
      <devnotes><summary>
Indicates whether the menu item represents a separator bar.
Call IsLine to determine whether the menu item is a separator bar. IsLine checks the Caption of the menu item and returns true if the value of Caption is '-'. Menu items with this Caption appear as separator bars. 
</summary></devnotes></function>
      <procedure name="GetChildren" visibility="public" procflags="override" file="Vcl.Menus.pas" line="242">
        <parameters>
          <parameter name="Proc" type="TGetChildProc"/>
          <parameter name="Root" type="TComponent"/>
        </parameters>
      <devnotes><summary>
Enumerates all child components.
Vcl.Menus.TMenuItem.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>
      <function name="GetEnumerator" visibility="public" file="Vcl.Menus.pas" line="243">
        <parameters>
          <retval type="TMenuItemEnumerator"/>
        </parameters>
      <devnotes><summary>
Returns a TComponent enumerator.
Vcl.Menus.TMenuItem.GetEnumerator inherits from System.Classes.TComponent.GetEnumerator. All content below this line refers to System.Classes.TComponent.GetEnumerator.
Returns a TComponent enumerator.
GetEnumerator returns a TComponentEnumerator reference, which enumerates the components contained within a specified containing component. 
To process all these subcomponents, call the TComponentEnumerator GetCurrent method within a While MoveNext do loop. 
</summary></devnotes></function>
      <function name="GetImageList" visibility="public" file="Vcl.Menus.pas" line="244">
        <parameters>
          <retval type="TCustomImageList"/>
        </parameters>
      <devnotes><summary>
Returns the Image list that supplies an image for the menu item.
Use GetImageList to access the list of images that contains the image for this menu item. The ImageIndex property identifies a specific image from the list that GetImageList returns.
GetImageList first checks the Parent of this menu item for a SubMenuImages property. If the parent menu item does not maintain a list of images, it checks that menu item's parent, and so on until reaching a top-level menu item (a menu item where Parent is not set). If none of the parent menu items has a SubMenuImages property, GetImageList checks the top-level menu for an Images property.
GetImageList returns the first image list it finds. If it doesn't find an image list, GetImageList returns nil (Delphi) or NULL (C++).
</summary></devnotes></function>
      <function name="GetParentComponent" visibility="public" procflags="override" file="Vcl.Menus.pas" line="245">
        <parameters>
          <retval type="TComponent"/>
        </parameters>
      <devnotes><summary>
Returns the parent component of the menu item.
GetParentComponent is called by the streaming system that loads and saves components. It ensures that objects are loaded and saved with their parent objects. GetParentComponent is overridden in descendant classes to return the appropriate parent for their particular type of component. TMenuItem overrides it to identify its associated menu, if it has one, as its parent.


</summary></devnotes></function>
      <function name="GetParentMenu" visibility="public" file="Vcl.Menus.pas" line="246">
        <parameters>
          <retval type="TMenu"/>
        </parameters>
      <devnotes><summary>
Returns the main menu of which the menu item is part.
GetParentMenu returns the menu that contains the menu item.
</summary></devnotes></function>
      <function name="HasParent" visibility="public" procflags="override" file="Vcl.Menus.pas" line="247">
        <parameters>
          <retval type="Boolean"/>
        </parameters>
      <devnotes><summary>
Indicates that the menu item has a parent that is responsible for loading and saving its data.
TMenuItem overrides HasParent to return true, indicating that menu items have a parent. Applications seldom call the HasParent method. It is used by the streaming system that loads and saves forms to determine when another object is responsible for writing a component to a stream.
</summary></devnotes></function>
      <function name="NewTopLine" visibility="public" file="Vcl.Menus.pas" line="248">
        <parameters>
          <retval type="Integer"/>
        </parameters>
      <devnotes><summary>
Inserts a separator bar at the beginning of the Items property array.
Use NewTopLine to insert a separator bar at the beginning of the items property array. This is useful when building up submenus dynamically at runtime.
NewTopLine returns the index of the newly inserted separator item in the Items property array.

Tip:  When inserting separator bars at runtime, it is a good idea to set AutoLineReduction to true so that superfluous separators can be automatically removed.</summary></devnotes></function>
      <function name="NewBottomLine" visibility="public" file="Vcl.Menus.pas" line="249">
        <parameters>
          <retval type="Integer"/>
        </parameters>
      <devnotes><summary>
Inserts a separator bar at the end of the Items property array.
Use NewBottomLine to insert a separator bar at the end of the items property array. This is useful when building up submenus dynamically at runtime.
NewBottomLine returns the index of the newly inserted separator item in the Items property array.

Tip:  When inserting separator bars at runtime, it is a good idea to set AutoLineReduction to true so that superfluous separators can be automatically removed.</summary></devnotes></function>
      <function name="InsertNewLineBefore" visibility="public" file="Vcl.Menus.pas" line="250">
        <parameters>
          <parameter name="AItem" type="TMenuItem"/>
          <retval type="Integer"/>
        </parameters>
      <devnotes><summary>
Inserts a separator bar before a specified item from the Items property array.
Use InsertNewLineBefore to insert a separator bar before the menu item specified by AItem. If AItem is not an item in the Items property array, InsertNewLineBefore raises an exception.
InsertNewLineBefore returns the index of the newly inserted separator item in the Items property array.

Tip:  When inserting separator bars at runtime, it is a good idea to set AutoLineReduction to true so that superfluous separators can be automatically removed.</summary></devnotes></function>
      <function name="InsertNewLineAfter" visibility="public" file="Vcl.Menus.pas" line="251">
        <parameters>
          <parameter name="AItem" type="TMenuItem"/>
          <retval type="Integer"/>
        </parameters>
      <devnotes><summary>
Inserts a separator bar after a specified item from the Items property array.
Use InsertNewLineAfter to insert a separator bar after the menu item specified by AItem. If AItem is not an item in the Items property array, InsertNewLineAfter raises an exception.
InsertNewLineAfter returns the index of the newly inserted separator item in the Items property array.

Tip:  When inserting separator bars at runtime, it is a good idea to set AutoLineReduction to true so that superfluous separators can be automatically removed.</summary></devnotes></function>
      <procedure name="Add" visibility="public" procflags="overload" file="Vcl.Menus.pas" line="252">
        <parameters>
          <parameter name="Item" type="TMenuItem"/>
        </parameters>
      <devnotes><summary>
Adds one or more menu items to the end of the Items property array.
Use Add to add new menu items to the dropdown menu for this menu item. If this menu item is the value of the Items property of a main menu or pop-up menu, Add adds the items to the end of the menu. 
Specify a single new menu item to add as the value of the Item parameter, or an array of new menu items as the value of the AItems parameter. AItems_Size is the index of the last item in the AItems array (one less than the number of items).
</summary></devnotes></procedure>
      <procedure name="Add" visibility="public" procflags="overload" file="Vcl.Menus.pas" line="253">
        <parameters>
          <parameter name="AItems" paramflags="const">
            <array name="AItems" file="Vcl.Menus.pas" line="2937">
              <element type="TMenuItem"/>
            </array>
          </parameter>
        </parameters>
      <devnotes><summary>
Adds one or more menu items to the end of the Items property array.
Use Add to add new menu items to the dropdown menu for this menu item. If this menu item is the value of the Items property of a main menu or pop-up menu, Add adds the items to the end of the menu. 
Specify a single new menu item to add as the value of the Item parameter, or an array of new menu items as the value of the AItems parameter. AItems_Size is the index of the last item in the AItems array (one less than the number of items).
</summary></devnotes></procedure>
      <procedure name="Remove" visibility="public" file="Vcl.Menus.pas" line="254">
        <parameters>
          <parameter name="Item" type="TMenuItem"/>
        </parameters>
      <devnotes><summary>
Removes a menu item from the Items property array
Call Remove to remove a menu item and all its submenus from a menu. The Item parameter is the item to be removed. If Item is not a menu item in the Items array, Remove raises an exception.
Remove does not free the item's memory. To remove an item from the menu and free its memory, call the Free method in the item you want to remove.
To temporarily hide a menu item, without deleting it, use the Visible property.
</summary></devnotes></procedure>
      <function name="RethinkHotkeys" visibility="public" file="Vcl.Menus.pas" line="255">
        <parameters>
          <retval type="Boolean"/>
        </parameters>
      <devnotes><summary>
Adjusts the captions of subitems so that every item has an accelerator and there are no duplicate accelerator keys.
Call RethinkHotkeys to adjust the accelerator keys for the items in the Items property and in any submenu of those items. RethinkHotkeys checks for items that do not have an accelerator key or that have duplicate accelerator keys. It then replaces any duplicate accelerators with unique characters and adds accelerator keys to items that don't have them. RethinkHotkeys gives first priority to existing accelerator key mappings, but may change them if necessary to ensure uniqueness.
RethinkHotkeys lets a menu adjust the accelerator keys when the AutoHotkeys property is false. For any menu or submenu that has AutoHotkeys set to true, this adjustment occurs automatically.
RethinkHotkeys returns true if RethinkHotkeys changed the Caption property of any menu items, false otherwise.
</summary></devnotes></function>
      <function name="RethinkLines" visibility="public" file="Vcl.Menus.pas" line="256">
        <parameters>
          <retval type="Boolean"/>
        </parameters>
      <devnotes><summary>
Removes superfluous separator lines from the Items property array.
Call RethinkLines to remove superfluous separators from the items in the Items property and in any submenu of those items. RethinkLines removes separators that appear at the very beginning or end of a submenu and separators that immediately follow another separator.
RethinkLines lets a menu remove superfluous separators when the AutoLineReduction property is false. For any menu or submenu that has AutoLineReduction set to true, this adjustment occurs automatically.
RethinkLines returns true if RethinkLines removed any menu items, false otherwise.
</summary></devnotes></function>
      <procedure name="SetParentComponent" visibility="public" procflags="override" file="Vcl.Menus.pas" line="257">
        <parameters>
          <parameter name="Value" type="TComponent"/>
        </parameters>
      <devnotes><summary>
Sets the parent component.
Vcl.Menus.TMenuItem.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>
      <property name="Command" visibility="public" read="FCommand" type="Word" file="Vcl.Menus.pas" line="258"><devnotes><summary>
Specifies the Windows Command ID associated with the menu item.
Use Command in an application that directly handles WM_COMMAND messages. When the user selects the menu item, Windows sends a WM_COMMAND to the window associated with the menu. The ItemID of the message contains the value of the Command property of the menu item that was selected.
</summary></devnotes></property>
      <property name="Handle" visibility="public" read="GetHandle" type="HMENU" file="Vcl.Menus.pas" line="259"><devnotes><summary>
Indicates the Windows menu handle of the drop-down menu associated with the menu item.
Use Handle when calling a Windows API function that requires a menu handle. Handle is only valid if the Count property is greater than 0.
</summary></devnotes></property>
      <property name="Count" visibility="public" read="GetCount" type="Integer" file="Vcl.Menus.pas" line="260"><devnotes><summary>
Indicates the number of subitems of the menu item.
Read Count to determine the number of subitems listed in the Items property array. When the user clicks on a menu item that has subitems, a dropdown menu appears which displays those subitems. Each subitem can, in turn, contain additional subitems. The Count property counts only the immediate subitems of the menu item. 
</summary></devnotes></property>
      <property name="Items[Index]" visibility="public" read="GetItem" type="TMenuItem" file="Vcl.Menus.pas" line="261"/>
      <property name="MenuIndex" visibility="public" read="GetMenuIndex" write="SetMenuIndex" type="Integer" file="Vcl.Menus.pas" line="262"><devnotes><summary>
Indicates the index of the menu item within its parent menu.
Use MenuIndex to locate the menu item in the Items property of its parent menu item. Changing this value moves the menu item within its menu.

Note: MenuIndex may not correspond to the position of the item in the menu the user sees. The menu can include items that are not visible.</summary></devnotes></property>
      <property name="Parent" visibility="public" read="FParent" type="TMenuItem" file="Vcl.Menus.pas" line="266"><devnotes><summary>
Identifies the parent menu item of this menu item.
Read Parent to determine the menu item that represents the dropdown menu that contains this menu item. If the menu item is a top level menu item in a main menu or pop-up menu, Parent is the value of that menu's Items property.
</summary></devnotes></property>
      <property name="Action" visibility="published" read="GetAction" write="SetAction" type="TBasicAction" file="Vcl.Menus.pas" line="269"><devnotes><summary>
Designates the action associated with the menu item.
Action designates the action object that is associated with the menu item. Actions can be associated with a menu item by using the action list editor at design-time. Actions are a way of centralizing user responses to commands.


</summary></devnotes></property>
      <property name="AutoCheck" visibility="published" read="FAutoCheck" write="FAutoCheck" type="Boolean" default="0" file="Vcl.Menus.pas" line="270"><devnotes><summary>
Indicates whether the menu item's checked state toggles automatically when the item is clicked.
When AutoCheck is true, then every time the menu item is clicked, the value of the Checked property toggles automatically before the OnClick event occurs. When AutoCheck is false, the application must explicitly set the value of the Checked property (for example, in an OnClick event handler).
</summary></devnotes></property>
      <property name="AutoHotkeys" visibility="published" read="FAutoHotkeys" write="SetAutoHotkeys" type="TMenuItemAutoFlag" default="2" file="Vcl.Menus.pas" line="271"><devnotes><summary>
Determines whether the accelerator keys for submenu items can be reset automatically.
Set AutoHotkeys to indicate whether the accelerator keys for the items in the Items property can be reset if necessary to ensure that every menu item has an accelerator key and no two items have the same accelerator key. This ensures that menu items added dynamically at runtime can have accelerator keys that do not introduce conflicts. TMenuItem tries to preserve all existing accelerator key mappings when adjusting the accelerator keys, but may be forced to change some in order to ensure that every item has a unique accelerator.
Before the menu is displayed, it checks and adjusts the accelerator key mappings if AutoHotkeys is maAutomatic or if AutoHotkeys is maParent and the parent menu item adjusts accelerator key mappings. Otherwise, the menu does not alter the items listed in the Items property, but may adjust the accelerator keys for submenus, depending on the AutoHotkeys property of the menu item that is the parent of the submenu.

Note:  When AutoHotkeys disallows automatic adjustment of accelerator keys, an application can still adjust the menu items by calling the RethinkHotkeys method. AutoHotkeys merely controls whether this adjustment occurs automatically.</summary></devnotes></property>
      <property name="AutoLineReduction" visibility="published" read="FAutoLineReduction" write="SetAutoLineReduction" type="TMenuItemAutoFlag" default="2" file="Vcl.Menus.pas" line="272"><devnotes><summary>
Determines whether redundant separator bars are automatically removed from the submenu.
Set AutoLineReduction to indicate whether the menu item should automatically ensure that the submenu defined by its Items property does not start or end with a separator bar and that two separator bars do not appear next to each other. This ensures that menus built dynamically at run time do not have separator bars in undesired positions.
Before the menu is displayed, the menu item removes superfluous separator bars if AutoLineReduction is maAutomatic or AutoLineReduction is maParent and the parent menu item removes superfluous separator bars. Otherwise, the menu item does not remove separators from the Items property, but may remove superfluous separators from submenus, depending on the AutoLineReduction property of the menu item that is the parent of the submenu.

Note: When AutoLineReduction disallows automatic removal of separator bars, an application can still remove superfluous separators by calling the RethinkLines method. AutoLineReduction merely controls whether this adjustment occurs automatically.</summary></devnotes></property>
      <property name="Bitmap" visibility="published" read="GetBitmap" write="SetBitmap" type="TBitmap" file="Vcl.Menus.pas" line="273"><devnotes><summary>
Designates a bitmap that is drawn for the menu item.
Use Bitmap to provide a custom image that appears next to the caption in the menu item. On owner-draw menus, Bitmap can be used from an OnDrawItem event handler to represent the entire menu item or a portion of the menu item.

Note:  If the ImageIndex property is set and the parent menu has a non-nil (Delphi) or NULL (C++) Images property, the image identified by ImageIndex is used instead of Bitmap.</summary></devnotes></property>
      <property name="Break" visibility="published" read="FBreak" write="SetBreak" type="TMenuBreak" default="0" file="Vcl.Menus.pas" line="274"><devnotes><summary>
Determines whether the menu item starts a new column in the menu.
Set Break to break a long menu into columns at the item described by this menu item. The value of Break indicates whether the menu is broken into columns, and if so, whether a bar appears between the columns of the parent menu.
The default is mbNone (no breaking into columns).
</summary></devnotes></property>
      <property name="Caption" visibility="published" read="FCaption" write="SetCaption" stored="IsCaptionStored" type="string" default="0" file="Vcl.Menus.pas" line="275"><devnotes><summary>
Specifies the text of the menu item.
Set Caption to the string the user sees for this item in the menu. To underline a character in a string, include an ampersand (&amp;) before the character. This type of character is called an accelerator character. If Caption includes an accelerator character, the user can select the menu item by pressing Alt while typing the underlined character.

Tip:  To automatically assign or adjust the accelerator characters in menu item captions, use the RethinkHotkeys method.
Use the Caption property to identify the menu item as a line that separates the menu into parts. Specify a hyphen character (-) as the value of Caption for the menu item to indicate that the menu item is a separator. To separate the menu into multiple columns, use the Break property instead.

Note:  This property is not stored with the menu item if it is supplied by a TAction object.</summary></devnotes></property>
      <property name="Checked" visibility="published" read="FChecked" write="SetChecked" stored="IsCheckedStored" type="Boolean" default="0" file="Vcl.Menus.pas" line="276"><devnotes><summary>
Specifies whether a check mark should appear beside the Caption.
Use Checked to allow a menu item to work like a check box. If Checked is true, the menu item appears checked. If Checked is false, the menu item remains unchecked.

Note:  This property is not stored with the menu item if it is supplied by a TAction object.</summary></devnotes></property>
      <property name="SubMenuImages" visibility="published" read="FSubMenuImages" write="SetSubMenuImages" type="TCustomImageList" file="Vcl.Menus.pas" line="277"><devnotes><summary>
Lists the images that can appear beside individual items in a submenu of this menu item.
Use SubMenuImages to supply a set of images that can appear beside items listed in the Items property. Individual menu items set their ImageIndex property to indicate which image in the list appears to the left of the menu item caption.

Tip:  If the application uses action lists, this property can be the value of the command list's Images property. This way, menu items and buttons that do the same thing can display the same image.</summary></devnotes></property>
      <property name="Default" visibility="published" read="FDefault" write="SetDefault" type="Boolean" default="0" file="Vcl.Menus.pas" line="278"><devnotes><summary>
Specifies whether the menu item is invoked when the parent item is double clicked.
Set Default to specify whether a menu item is the default item in a submenu. Default menu items are executed when the parent item is double-clicked, allowing users to avoid navigating the submenus that contain them. 
The default item appears in boldface. A submenu can have only one default item. If the Items list of the parent menu item already contains a default menu item, setting the Default property to true sets the Default property of the previous default item to false.
</summary></devnotes></property>
      <property name="Enabled" visibility="published" read="FEnabled" write="SetEnabled" stored="IsEnabledStored" type="Boolean" default="1" file="Vcl.Menus.pas" line="279"><devnotes><summary>
Specifies whether the menu item is enabled.
Use Enabled to enable or disable a menu item. If Enabled is true, the Click method is called when the user selects the item with the mouse. If Enabled is false, the menu item appears dimmed and the user cannot select it. However, calling the Click method works even when Enabled is false.

Note:  This property is not stored with the menu item if it is supplied by a TAction object.</summary></devnotes></property>
      <property name="GroupIndex" visibility="published" read="FGroupIndex" write="SetGroupIndex" type="Byte" default="0" file="Vcl.Menus.pas" line="280"><devnotes><summary>
Identifies the logical group to which the menu item belongs.
Use GroupIndex to control how menus are merged. In applications that contain multiple forms, items from the menus of secondary forms can be merged into the application's main menu as those forms become active. MDI applications always merge the menus of child windows with the main menu of the parent window. 
By default, all menu items in a menu bar (main menu) have the same GroupIndex value. To use GroupIndex to merge menus, set the GroupIndex value of each successive menu item to a value equal to or greater than that of the previous menu item. 
When a menu item in a menu bar that is merged into the application's main menu has the same GroupIndex value as a menu item in the main menu, the menu item in the application's main menu is replaced by the corresponding menu item. If multiple menu items in the application's main menu have the same GroupIndex value, they can be replaced only by separate menu items from the other form's menu that also have repeated GroupIndex values. Thus, the first main menu item with a given value is replaced by the first item in the second form with that value, the second item in the main form is replaced by the second item in the second form, and so on. 
When a menu item in a menu bar that is merged into the application's main menu has a GroupIndex that falls between the GroupIndex values of two adjacent items on the application's main menu, that menu item is inserted between the two adjacent items. If the item's GroupIndex value is greater than all other GroupIndex values in the application's main menu, the item appears at the end of the main menu. If the GroupIndex value is less than all other GroupIndex values in the application's main menu, the menu item appears at the beginning of the main menu bar. 
When an object created by an OLE 2.0 server application is activated, the server can try to merge its menus with the menus of the container application. The GroupIndex property is used to replace up to three main menu items with items from the server, in the manner described above. The server application uses the following predefined GroupIndex values to locate menu items to replace:





Group

Index

Description



Edit



1



Server menu items for editing the active OLE object




View



3



Server menu items for modifying the view of the OLE object.




Help



5



Server menu items for accessing the server's online Help.





Note:  See the documentation for the OLE server for information about whether it attempts menu merge during in-place activation.
GroupIndex can also be used to define groups of menu items that act like radio buttons. To allow menu items to behave like radio buttons, set the RadioItem property to all menu items in the group to true, and assign each menu item the same value of GroupIndex. Checking any menu item in the group will then uncheck the others.
</summary></devnotes></property>
      <property name="HelpContext" visibility="published" read="FHelpContext" write="FHelpContext" stored="IsHelpContextStored" type="THelpContext" default="0" file="Vcl.Menus.pas" line="281"><devnotes><summary>
Specifies the help context ID associated with the menu item.
Use HelpContext to associate the menu item with a screen in the Help system of the application. Each screen in the Help system should have a unique context ID. When a menu item is selected using the keyboard, pressing F1 displays a Help screen. Which Help screen appears depends on the value of the HelpContext property.

Note:  This property is not stored with the menu item if it is supplied by a TAction object.</summary></devnotes></property>
      <property name="Hint" visibility="published" read="FHint" write="FHint" stored="IsHintStored" type="string" default="0" file="Vcl.Menus.pas" line="282"><devnotes><summary>
Specifies the text string that can appear when the user moves the mouse pointer over a menu item.
Set Hint to a string that provides more information about the meaning of the menu item than the Caption. The hint text appears in the Status Bar when the user pauses with the mouse over the menu item if Help Hints are enabled (that is, if the Form's and the Application's ShowHint properties are True). It is also available for the code in the application's OnHint event handler.
The value of Hint can specify both a short value for the Help Hint window and a longer string to be used by the OnHint event handler. To provide both a short and a long hint, set Hint to the short string, followed by a vertical bar (|), followed by the long string. 

Note: This property is not stored with the menu item if it is supplied by a TAction object.</summary></devnotes></property>
      <property name="ImageIndex" visibility="published" read="FImageIndex" write="SetImageIndex" stored="IsImageIndexStored" type="TImageIndex" default="-1" file="Vcl.Menus.pas" line="283"><devnotes><summary>
Indicates which image maintained by the parent menu appears next to the menu item.
Set ImageIndex to designate an image that should appear next to the caption when the menu item is drawn. On top-level menu items, ImageIndex specifies a zero-offset index into the Images property of the parent menu (TMenu or TPopupMenu). On submenu items, ImageIndex is the zero-offset index into the parent item's SubMenuImages property.
If the parent menu or item does not maintain a list of images, use the Bitmap property to provide an image for a single menu item. However, any image specified by ImageIndex takes precedence over the Bitmap property. Bitmap is only used when ImageIndex has a negative value or the parent's Images or SubMenuImages property is nil (Delphi) or NULL (C++).

Note:  This property is not stored with the menu item if it is supplied by a TAction object.</summary></devnotes></property>
      <property name="ImageName" visibility="published" read="FImageName" write="SetImageName" stored="IsImageNameStored" type="TImageName" default="0" file="Vcl.Menus.pas" line="284"><devnotes><summary>
Displays the name of linked items from the Image Collection.


</summary></devnotes></property>
      <property name="RadioItem" visibility="published" read="FRadioItem" write="SetRadioItem" type="Boolean" default="0" file="Vcl.Menus.pas" line="285"><devnotes><summary>
Specifies whether the menu item is mutually exclusive with other menu items in its group.
Use RadioItem to make the menu item behave like a radio button with a group of other menu items. The group of menu items is the set of all menu items in a pop-up or drop-down menu that have the same value of GroupIndex. When RadioItem is true, only one menu item in the group that contains the menu item can be checked at a time. The single selected menu item in the group is indicated by a round dot next to the Caption.

Note: RadioItem does not automatically select the item when the user clicks it at runtime: you must still explicitly set the Checked property to true in response to the OnClick event. RadioItem simply changes the appearance of the Checked state (from a check mark to a round dot) and automatically unchecks other menu items in the same group when you set the Checked property to true.
RadioItem does not work for the top-level items in a main menu.

Note:  Under Windows NT 3.51, the round dot indicator only appears if the &quot;new shell&quot; has been installed.</summary></devnotes></property>
      <property name="ShortCut" visibility="published" read="FShortCut" write="SetShortCut" stored="IsShortCutStored" type="TShortCut" default="0" file="Vcl.Menus.pas" line="286"><devnotes><summary>
Shortcut that opens the menu item.
The string representation of this shortcut appears to the right of the menu item in the menu.

Note: ShortCut is not stored with the menu item if it is supplied by an action.</summary></devnotes></property>
      <property name="Visible" visibility="published" read="FVisible" write="SetVisible" stored="IsVisibleStored" type="Boolean" default="1" file="Vcl.Menus.pas" line="287"><devnotes><summary>
Specifies whether the menu item appears in the menu.
Use Visible to prevent the user from seeing an item in the menu. For example, remove menu items that do not apply to the current component of a pop-up menu in an OnPopup event handler.
If Visible is true, the menu item appears. If Visible is false, the menu item is hidden.

Note:  This property is not stored with the menu item if it is supplied by a TAction object.</summary></devnotes></property>
      <event name="OnClick" visibility="published" read="FOnClick" write="FOnClick" stored="IsOnClickStored" type="TNotifyEvent" file="Vcl.Menus.pas" line="288"><devnotes><summary>
Occurs when the user clicks menu item.
Write an OnClick event handler to implement the desired behavior for when the user selects the menu item. An advantage of using the OnClick event handler over directly handling WM_COMMAND messages sent when the user selects the menu item, is that only the OnClick event occurs when the Click method is called.

Note:  This event handler is not stored with the menu item if it is supplied by a TAction object.</summary></devnotes></event>
      <event name="OnDrawItem" visibility="published" read="FOnDrawItem" write="FOnDrawItem" type="TMenuDrawItemEvent" file="Vcl.Menus.pas" line="289"><devnotes><summary>
Occurs when an owner-draw menu needs to be drawn.
Write an OnDrawItem event handler to render the image of a menu item in an owner-draw menu. In the event handler, use the Bitmap property or the ImageIndex property to access a bitmap that represents the menu item.

Note: OnDrawItem will only occur if the parent menu's OwnerDraw property is true or the parent menu's Images property has been set.
Tip:  For more precise information about the menu item's state, use the OnAdvancedDrawItem event instead.</summary></devnotes></event>
      <event name="OnAdvancedDrawItem" visibility="published" read="FOnAdvancedDrawItem" write="FOnAdvancedDrawItem" type="TAdvancedMenuDrawItemEvent" file="Vcl.Menus.pas" line="290"><devnotes><summary>
Occurs when an owner-draw menu needs to be drawn.
Write an OnAdvancedDrawItem event handler to render the image of a menu item in an owner-draw menu. 
In the event handler, use the Bitmap property or the ImageIndex property to access a bitmap that represents the menu item.

Note: OnAdvancedDrawItem will only occur if the parent menu's OwnerDraw property is true or the parent menu's Images property has been set.</summary></devnotes></event>
      <event name="OnMeasureItem" visibility="published" read="FOnMeasureItem" write="FOnMeasureItem" type="TMenuMeasureItemEvent" file="Vcl.Menus.pas" line="291"><devnotes><summary>
Occurs on owner-draw menu items to determine menu item size before the menu is drawn.
Write an OnMeasureItem event handler to indicate the size of owner-draw menu items. If the menu item is using a bitmap image, the event handler can use the Bitmap property or the ImageIndex property to access the bitmap to determine its size.

Note: OnMeasureItem will only occur if the parent menu's OwnerDraw property is true or the parent menu's Images property has been set.</summary></devnotes></event>
    </members>
  <devnotes><summary>
TMenuItem describes the properties of an item in a menu.
Use TMenuItem to specify the appearance and behavior of an item in a menu. Each TMainMenu or TPopupMenu component can contain multiple menu items. When a menu is defined at design time, the Menu Designer automatically creates menu item objects for each command on the menu.
The Caption property can be used to define an accelerator key to the menu item of a TMainMenu.
</summary></devnotes></class>
  <enum name="TFindItemKind" file="Vcl.Menus.pas" line="294">
    <element value="0" name="fkCommand" file="Vcl.Menus.pas" line="294"/>
    <element value="1" name="fkHandle" file="Vcl.Menus.pas" line="294"/>
    <element value="2" name="fkShortCut" file="Vcl.Menus.pas" line="294"/>
  </enum>
  <class name="TMenu" file="Vcl.Menus.pas" line="297">
    <ancestor name="TComponent" namespace="System.Classes">
      <interfaces>
        <implements name="IInterfaceComponentReference"/>
        <implements name="IInterface"/>
      </interfaces>
      <methodref name="GetComObject" visibility="private">
      </methodref>
      <methodref name="GetComponent" visibility="private">
      </methodref>
      <methodref name="GetComponentCount" visibility="private">
      </methodref>
      <methodref name="GetComponentIndex" visibility="private">
      </methodref>
      <methodref name="Insert" visibility="private">
      </methodref>
      <methodref name="ReadLeft" visibility="private">
      </methodref>
      <methodref name="ReadTop" visibility="private">
      </methodref>
      <methodref name="Remove" visibility="private">
      </methodref>
      <methodref name="RemoveNotification" visibility="private">
      </methodref>
      <methodref name="SetComponentIndex" visibility="private">
      </methodref>
      <methodref name="SetReference" visibility="private">
      </methodref>
      <methodref name="WriteLeft" visibility="private">
      </methodref>
      <methodref name="WriteTop" visibility="private">
      </methodref>
      <methodref name="IntfGetComponent" visibility="private">
      </methodref>
      <methodref name="DoGetDeltaStreams" visibility="private">
      </methodref>
      <methodref name="ReadDeltaStream" visibility="private">
      </methodref>
      <methodref name="ReadDeltaState" visibility="private">
      </methodref>
      <methodref name="FindSortedComponent" visibility="private">
      </methodref>
      <methodref name="AddSortedComponent" visibility="private">
      </methodref>
      <methodref name="RemoveSortedComponent" visibility="private" procflags="inline">
      </methodref>
      <methodref name="Create@" visibility="class private" procflags="class constructor noself">
      </methodref>
      <methodref name="AsyncSchedule" visibility="protected" procflags="virtual">
      </methodref>
      <methodref name="ChangeName" visibility="protected">
      </methodref>
      <methodref name="DefineProperties" visibility="protected" procflags="override">
      </methodref>
      <methodref name="GetChildren" visibility="protected" procflags="dynamic">
      </methodref>
      <methodref name="GetChildOwner" visibility="protected" procflags="dynamic">
      </methodref>
      <methodref name="GetChildParent" visibility="protected" procflags="dynamic">
      </methodref>
      <methodref name="GetOwner" visibility="protected" procflags="override">
      </methodref>
      <methodref name="Loaded" visibility="protected" procflags="virtual">
      </methodref>
      <methodref name="Notification" visibility="protected" procflags="virtual">
      </methodref>
      <methodref name="GetDeltaStreams" visibility="protected" procflags="dynamic">
      </methodref>
      <methodref name="ReadState" visibility="protected" procflags="virtual">
      </methodref>
      <methodref name="CanObserve" visibility="protected" procflags="virtual">
      </methodref>
      <methodref name="ObserverAdded" visibility="protected" procflags="virtual">
      </methodref>
      <methodref name="GetObservers" visibility="protected" procflags="virtual">
      </methodref>
      <methodref name="SetAncestor" visibility="protected">
      </methodref>
      <methodref name="SetDesigning" visibility="protected">
      </methodref>
      <methodref name="SetInline" visibility="protected">
      </methodref>
      <methodref name="SetDesignInstance" visibility="protected">
      </methodref>
      <methodref name="SetName" visibility="protected" procflags="virtual">
      </methodref>
      <methodref name="SetChildOrder" visibility="protected" procflags="dynamic">
      </methodref>
      <methodref name="SetParentComponent" visibility="protected" procflags="dynamic">
      </methodref>
      <methodref name="Updating" visibility="protected" procflags="dynamic">
      </methodref>
      <methodref name="Updated" visibility="protected" procflags="dynamic">
      </methodref>
      <methodref name="UpdateRegistry" visibility="protected" procflags="class virtual">
      </methodref>
      <methodref name="ValidateRename" visibility="protected" procflags="virtual">
      </methodref>
      <methodref name="ValidateContainer" visibility="protected" procflags="dynamic">
      </methodref>
      <methodref name="ValidateInsert" visibility="protected" procflags="dynamic">
      </methodref>
      <methodref name="WriteState" visibility="protected" procflags="virtual">
      </methodref>
      <methodref name="RemoveFreeNotifications" visibility="protected">
      </methodref>
      <methodref name="QueryInterface" visibility="protected" procflags="virtual">
      </methodref>
      <methodref name="_AddRef" visibility="protected">
      </methodref>
      <methodref name="_Release" visibility="protected">
      </methodref>
      <methodref name="GetTypeInfoCount" visibility="protected">
      </methodref>
      <methodref name="GetTypeInfo" visibility="protected">
      </methodref>
      <methodref name="GetIDsOfNames" visibility="protected">
      </methodref>
      <methodref name="Invoke" visibility="protected">
      </methodref>
      <eventref name="OnGetDeltaStreams" visibility="protected">
      </eventref>
      <methodref name="Create" visibility="public" procflags="constructor virtual">
      </methodref>
      <methodref name="Destroy" visibility="public" procflags="destructor override">
      </methodref>
      <methodref name="BeforeDestruction" visibility="public" procflags="override">
      </methodref>
      <methodref name="BeginInvoke" visibility="public" procflags="overload">
      </methodref>
      <methodref name="BeginInvoke" visibility="public" procflags="overload">
      </methodref>
      <methodref name="BeginInvoke" visibility="public" procflags="overload">
      </methodref>
      <methodref name="BeginInvoke" visibility="public" procflags="overload">
      </methodref>
      <methodref name="BeginInvoke" visibility="public" procflags="overload">
      </methodref>
      <methodref name="BeginInvoke" visibility="public" procflags="overload">
      </methodref>
      <methodref name="BeginInvoke" visibility="public" procflags="overload">
      </methodref>
      <methodref name="BeginInvoke" visibility="public" procflags="overload">
      </methodref>
      <methodref name="EndInvoke" visibility="public" procflags="overload">
      </methodref>
      <methodref name="EndInvoke" visibility="public" procflags="overload">
      </methodref>
      <methodref name="EndFunctionInvoke" visibility="public">
      </methodref>
      <methodref name="DestroyComponents" visibility="public">
      </methodref>
      <methodref name="Destroying" visibility="public">
      </methodref>
      <methodref name="ExecuteAction" visibility="public" procflags="dynamic">
      </methodref>
      <methodref name="FindComponent" visibility="public">
      </methodref>
      <methodref name="FreeNotification" visibility="public">
      </methodref>
      <methodref name="RemoveFreeNotification" visibility="public">
      </methodref>
      <methodref name="FreeOnRelease" visibility="public">
      </methodref>
      <methodref name="GetEnumerator" visibility="public" procflags="inline">
      </methodref>
      <methodref name="GetParentComponent" visibility="public" procflags="dynamic">
      </methodref>
      <methodref name="GetNamePath" visibility="public" procflags="override">
      </methodref>
      <methodref name="HasParent" visibility="public" procflags="dynamic">
      </methodref>
      <methodref name="InsertComponent" visibility="public">
      </methodref>
      <methodref name="RemoveComponent" visibility="public">
      </methodref>
      <methodref name="SetSubComponent" visibility="public">
      </methodref>
      <methodref name="SafeCallException" visibility="public" procflags="override">
      </methodref>
      <methodref name="UpdateAction" visibility="public" procflags="virtual">
      </methodref>
      <methodref name="IsImplementorOf" visibility="public">
      </methodref>
      <methodref name="ReferenceInterface" visibility="public">
      </methodref>
      <propertyref name="ComObject" visibility="public">
      </propertyref>
      <propertyref name="Components" visibility="public">
      </propertyref>
      <propertyref name="ComponentCount" visibility="public">
      </propertyref>
      <propertyref name="ComponentIndex" visibility="public">
      </propertyref>
      <propertyref name="ComponentState" visibility="public">
      </propertyref>
      <propertyref name="ComponentStyle" visibility="public">
      </propertyref>
      <propertyref name="DesignInfo" visibility="public">
      </propertyref>
      <propertyref name="Owner" visibility="public">
      </propertyref>
      <propertyref name="VCLComObject" visibility="public">
      </propertyref>
      <propertyref name="Observers" visibility="public">
      </propertyref>
      <propertyref name="Name" visibility="published">
      </propertyref>
      <propertyref name="Tag" visibility="published">
      </propertyref>
      <ancestor name="TPersistent" namespace="System.Classes">
        <methodref name="AssignError" visibility="private">
        </methodref>
        <methodref name="AssignTo" visibility="protected" procflags="virtual">
        </methodref>
        <methodref name="DefineProperties" visibility="protected" procflags="virtual">
        </methodref>
        <methodref name="GetOwner" visibility="protected" procflags="dynamic">
        </methodref>
        <methodref name="Destroy" visibility="public" procflags="destructor override">
        </methodref>
        <methodref name="Assign" visibility="public" procflags="virtual">
        </methodref>
        <methodref name="GetNamePath" visibility="public" procflags="dynamic">
        </methodref>
        <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>
      </ancestor>
    </ancestor>
    <members>
      <field name="FBiDiMode" type="TBiDiMode" visibility="private" size="1" offset="64" file="Vcl.Menus.pas" line="299"/>
      <field name="FItems" type="TMenuItem" visibility="private" size="4" offset="68" file="Vcl.Menus.pas" line="300"/>
      <field name="FWindowHandle" type="HWND" visibility="private" size="4" offset="72" file="Vcl.Menus.pas" line="301"/>
      <field name="FOwnerDraw" type="Boolean" visibility="private" size="1" offset="76" file="Vcl.Menus.pas" line="302"/>
      <field name="FParentBiDiMode" type="Boolean" visibility="private" size="1" offset="77" file="Vcl.Menus.pas" line="303"/>
      <field name="FImageChangeLink" type="TChangeLink" visibility="private" size="4" offset="80" file="Vcl.Menus.pas" line="304"/>
      <field name="FImages" type="TCustomImageList" visibility="private" size="4" offset="84" file="Vcl.Menus.pas" line="305"/>
      <field name="FOnChange" type="TMenuChangeEvent" visibility="private" size="8" offset="88" file="Vcl.Menus.pas" line="306"/>
      <field name="FMenuImage" type="string" visibility="private" size="4" offset="96" file="Vcl.Menus.pas" line="310"/>
      <field name="FPreviousDPI" type="Integer" visibility="private" size="4" offset="100" file="Vcl.Menus.pas" line="312"/>
      <procedure name="SetBiDiMode" visibility="private" file="Vcl.Menus.pas" line="313">
        <parameters>
          <parameter name="Value" type="TBiDiMode"/>
        </parameters>
      </procedure>
      <procedure name="SetOwnerDraw" visibility="private" file="Vcl.Menus.pas" line="314">
        <parameters>
          <parameter name="Value" type="Boolean"/>
        </parameters>
      </procedure>
      <procedure name="SetImages" visibility="private" file="Vcl.Menus.pas" line="315">
        <parameters>
          <parameter name="Value" type="TCustomImageList"/>
        </parameters>
      </procedure>
      <procedure name="SetParentBiDiMode" visibility="private" file="Vcl.Menus.pas" line="316">
        <parameters>
          <parameter name="Value" type="Boolean"/>
        </parameters>
      </procedure>
      <procedure name="SetWindowHandle" visibility="private" file="Vcl.Menus.pas" line="317">
        <parameters>
          <parameter name="Value" type="HWND"/>
        </parameters>
      </procedure>
      <procedure name="ImageListChange" visibility="private" file="Vcl.Menus.pas" line="318">
        <parameters>
          <parameter name="Sender" type="TObject"/>
        </parameters>
      </procedure>
      <function name="IsBiDiModeStored" visibility="private" file="Vcl.Menus.pas" line="319">
        <parameters>
          <retval type="Boolean"/>
        </parameters>
      </function>
      <function name="UpdateImage" visibility="private" file="Vcl.Menus.pas" line="320">
        <parameters>
          <retval type="Boolean"/>
        </parameters>
      </function>
      <function name="GetAutoHotkeys" visibility="private" file="Vcl.Menus.pas" line="321">
        <parameters>
          <retval type="TMenuAutoFlag"/>
        </parameters>
      </function>
      <procedure name="SetAutoHotkeys" visibility="private" file="Vcl.Menus.pas" line="322">
        <parameters>
          <parameter name="Value" type="TMenuAutoFlag" paramflags="const"/>
        </parameters>
      </procedure>
      <function name="GetAutoLineReduction" visibility="private" file="Vcl.Menus.pas" line="323">
        <parameters>
          <retval type="TMenuAutoFlag"/>
        </parameters>
      </function>
      <procedure name="SetAutoLineReduction" visibility="private" file="Vcl.Menus.pas" line="324">
        <parameters>
          <parameter name="Value" type="TMenuAutoFlag" paramflags="const"/>
        </parameters>
      </procedure>
      <procedure name="AdjustBiDiBehavior" visibility="protected" file="Vcl.Menus.pas" line="329">
      <devnotes><summary>
Applies the BiDiMode property to the menu when the Windows control is created.
AdjustBiDiBehavior is called automatically when the Windows control for the menu is created. It ensures that the BiDiMode property is properly reflected in the menu if the application is running in a Middle Eastern locale.
</summary></devnotes></procedure>
      <procedure name="DoChange" visibility="protected" procflags="virtual" file="Vcl.Menus.pas" line="330">
        <parameters>
          <parameter name="Source" type="TMenuItem"/>
          <parameter name="Rebuild" type="Boolean"/>
        </parameters>
      <devnotes><summary>
Generates an OnChange event.
DoChange is called automatically when the properties of any menu items change. The Source parameter specifies the menu item (if any) that changed. The Rebuild parameter indicates whether the change requires the menu to regenerate its items.
</summary></devnotes></procedure>
      <procedure name="DoBiDiModeChanged" visibility="protected" file="Vcl.Menus.pas" line="331">
      <devnotes><summary>
Updates the menu when the BiDiMode property changes.
Do not call DoBiDiModeChanged. It is called automatically when the menu's BiDiMode property changes to update the menu to reflect the current setting.
</summary></devnotes></procedure>
      <function name="GetHandle" visibility="protected" procflags="virtual" file="Vcl.Menus.pas" line="332">
        <parameters>
          <retval type="HMENU"/>
        </parameters>
      <devnotes><summary>
Returns the value of the Handle property.
GetHandle is the protected implementation of the Handle property. Override this method to change the implementation of the handle property. For example, TMainMenu overrides GetHandle to adjust for menus added by embedded OLE objects.
</summary></devnotes></function>
      <function name="IsOwnerDraw" visibility="protected" file="Vcl.Menus.pas" line="333">
        <parameters>
          <retval type="Boolean"/>
        </parameters>
      <devnotes><summary>
Indicates whether menu items can contain more than simple captions.
IsOwnerDraw returns true when the OwnerDraw property is true or the Images property is not nil (Delphi) or NULL (C++). This is used internally to determine how the menu should be painted.
</summary></devnotes></function>
      <procedure name="Loaded" visibility="protected" procflags="override" file="Vcl.Menus.pas" line="334">
      <devnotes><summary>
Calls the DoChange method when the menu is first loaded into memory.
Loaded is called automatically immediately after the menu is loaded into memory. It calls the DoChange method to allow any necessary fixup.
</summary></devnotes></procedure>
      <procedure name="MenuChanged" visibility="protected" procflags="virtual" file="Vcl.Menus.pas" line="335">
        <parameters>
          <parameter name="Sender" type="TObject"/>
          <parameter name="Source" type="TMenuItem"/>
          <parameter name="Rebuild" type="Boolean"/>
        </parameters>
      <devnotes><summary>
Responds when the menu changes.
MenuChanged is called automatically when changes occur that affect the structure of the menu. The Sender parameter indicates the object that originates the change. Its value can be nil (Delphi) or NULL (C++). Source indicates which menu item is affected. Rebuild indicates whether the menu must be rebuilt to reflect the change (for example when items are added or deleted).
MenuChanged calls the DoChange method, which generates an OnChange event.

Note:  Changes that affect individual items rather than the menu as a whole trigger the UpdateItems method instead of MenuChanged. For example, when the Images property changes, UpdateItems is called rather than MenuChanged.</summary></devnotes></procedure>
      <procedure name="Notification" visibility="protected" procflags="override" file="Vcl.Menus.pas" line="336">
        <parameters>
          <parameter name="AComponent" type="TComponent"/>
          <parameter name="Operation" type="TOperation"/>
        </parameters>
      <devnotes><summary>
Responds when components are added or deleted.
TMenu overrides the inherited method to set the Images property to nil (Delphi) or NULL (C++) if the ImageList is deleted.
</summary></devnotes></procedure>
      <procedure name="SetChildOrder" visibility="protected" procflags="override" file="Vcl.Menus.pas" line="337">
        <parameters>
          <parameter name="Child" type="TComponent"/>
          <parameter name="Order" type="Integer"/>
        </parameters>
      <devnotes><summary>
Ensures that the menu item indexes reflect the order in which they are loaded and saved.
SetChildOrder is called automatically when menus are loaded into memory. The Child parameter specifies the child object that was just loaded. The Order parameter specifies the order in which it was loaded. SetChildOrder assigns the MenuIndex for each child to match the order in which the items are loaded.
</summary></devnotes></procedure>
      <procedure name="UpdateItems" visibility="protected" file="Vcl.Menus.pas" line="338">
      <devnotes><summary>
Causes all menu items to update themselves.
UpdateItems is called automatically when changes occur that must be reflected by individual menu items. Changes that affect the menu as a whole trigger the MenuChanged method instead.
</summary></devnotes></procedure>
      <function name="DoGetMenuString" visibility="protected" file="Vcl.Menus.pas" line="342">
        <parameters>
          <parameter name="Menu" type="HMENU"/>
          <parameter name="ItemID" type="Cardinal"/>
          <parameter name="Str" type="PWideChar"/>
          <parameter name="MaxCount" type="Integer"/>
          <parameter name="Flag" type="Cardinal"/>
          <retval type="Integer"/>
        </parameters>
      <devnotes><summary>
Returns the caption for an item in the menu.
DoGetMenuString is used internally to obtain menu item captions, given the Windows menu handle. The Menu parameter indicates the menu's handle. The ItemID parameter specifies the menu item whose caption is desired. If the Flag parameter is MF_BYCOMMAND, ItemID is the Command property of the menu item. If Flag is MF_BYPOSITION, ItemID is the 0-based index of the menu item. The caption is returned in a buffer pointed to by the Str parameter. MaxCount indicates the size of that buffer.
Unlike the Windows API function GetMenuString, DoGetMenuString returns the correct caption for owner-draw menu items.
</summary></devnotes></function>
      <event name="OnChange" visibility="protected" read="FOnChange" write="FOnChange" type="TMenuChangeEvent" file="Vcl.Menus.pas" line="345"><devnotes><summary>
Occurs when the menu changes.
Write an OnChange event handler to respond to changes in the menu's structure. OnChange occurs when the menu is loaded into memory, and in response to property changes that affect the menu's structure.
</summary></devnotes></event>
      <constructor name="Create" visibility="public" file="Vcl.Menus.pas" line="347">
        <parameters>
          <parameter name="AOwner" type="TComponent"/>
        </parameters>
      <devnotes><summary>
Creates an instance of TMenu.
Call Create to create a menu at runtime. Menus placed on forms at design time are created automatically. Create calls the inherited Create method, then sets the initial values for the menu component, including creating an Items property.
The AOwner parameter indicates the component (usually a form) that is responsible for managing the memory associated with the menu.
</summary></devnotes></constructor>
      <function name="CreateMenuItem" visibility="public" procflags="dynamic" file="Vcl.Menus.pas" line="348">
        <parameters>
          <retval type="TMenuItem"/>
        </parameters>
      <devnotes><summary>
Embarcadero Technologies does not currently have any additional information.


</summary></devnotes></function>
      <destructor name="Destroy" visibility="public" file="Vcl.Menus.pas" line="349">
        <parameters>
        </parameters>
      <devnotes><summary>
Destroys the menu component.
Do not call Destroy directly in an application. Instead, call Free. Free verifies that the TMenu reference is not nil, and only then calls Destroy. Destroy frees the Items property, and then calls the inherited Destroy method.
</summary></devnotes></destructor>
      <function name="DispatchCommand" visibility="public" file="Vcl.Menus.pas" line="350">
        <parameters>
          <parameter name="ACommand" type="Word"/>
          <retval type="Boolean"/>
        </parameters>
      <devnotes><summary>
Calls the Click method of the menu item with the specified value as its Command property.
Call DispatchCommand to simulate a click on the menu item associated with a command ID. If DispatchCommand locates a menu item that matches the command ID, it calls the Click method for that menu item and returns true. If there is no such item, DispatchCommand returns false.
</summary></devnotes></function>
      <function name="DispatchPopup" visibility="public" file="Vcl.Menus.pas" line="351">
        <parameters>
          <parameter name="AHandle" type="HMENU"/>
          <retval type="Boolean"/>
        </parameters>
      <devnotes><summary>
Dispatches a pop-up menu command.
Call DispatchPopup to simulate a click on the menu item associated with the pop-up menu handle. If DispatchPopup locates a menu item that matches the pop-up menu handle, it calls the Click method for that menu item and returns true. If there is no such item, DispatchPopup returns false. 
</summary></devnotes></function>
      <function name="FindItem" visibility="public" file="Vcl.Menus.pas" line="352">
        <devnotes><summary>
Locates and returns a menu item.
Call FindItem to locate a menu item in the menu or one of its submenus. The menu item is identified by either a pop-up menu handle, command ID, or menu shortcut value. The Kind parameter specifies how the menu item is to be identified.
</summary></devnotes>
        <parameters>
          <parameter name="Value" type="NativeUInt"/>
          <parameter name="Kind" type="TFindItemKind"/>
          <retval type="TMenuItem"/>
        </parameters>
      </function>
      <procedure name="GetChildren" visibility="public" procflags="override" file="Vcl.Menus.pas" line="353">
        <parameters>
          <parameter name="Proc" type="TGetChildProc"/>
          <parameter name="Root" type="TComponent"/>
        </parameters>
      <devnotes><summary>
Executes a callback for child menu items.
GetChildren is called automatically by the streaming system so that child menu items are saved and read with their parent menu.
</summary></devnotes></procedure>
      <function name="GetHelpContext" visibility="public" file="Vcl.Menus.pas" line="354">
        <devnotes><summary>
Returns the help context ID associated with a menu item.
Call GetHelpContext to obtain the ID for context-sensitive help on a particular menu item. Identify the menu item as the item that matches the Value property. If ByCommand is true, Value is the Command property of the TMenuItem. If ByCommand is false, Value is the Handle property.
</summary></devnotes>
        <parameters>
          <parameter name="Value" type="NativeUInt"/>
          <parameter name="ByCommand" type="Boolean"/>
          <retval type="THelpContext"/>
        </parameters>
      </function>
      <property name="Images" visibility="public" read="FImages" write="SetImages" type="TCustomImageList" file="Vcl.Menus.pas" line="355"><devnotes><summary>
Lists the images that can appear beside individual menu items.
Use Images to hold the set of images that can appear beside menu items in the menu. Individual menu items set their ImageIndex property to indicate which image in the list appears to the left of the menu item caption.
Images in the list should be 16x16.

Tip:  If the application uses action lists, this property should be the value of the action list's Images property. This way, menu items and buttons that do the same thing can display the same image.</summary></devnotes></property>
      <function name="IsRightToLeft" visibility="public" file="Vcl.Menus.pas" line="356">
        <parameters>
          <retval type="Boolean"/>
        </parameters>
      <devnotes><summary>
Indicates whether menu items read from right to left.
Call IsRightToLeft to determine the layout of main menu items. IsRightToLeft returns true if the application is running on a system with a Middle Eastern locale and the BiDiMode property is not bdLeftToRight.
</summary></devnotes></function>
      <function name="IsShortCut" visibility="public" procflags="dynamic" file="Vcl.Menus.pas" line="357">
        <parameters>
          <parameter name="Message" type="TWMKey" paramflags="var"/>
          <retval type="Boolean"/>
        </parameters>
      <devnotes><summary>
Dispatches a key message if it represents a shortcut key for an item in the menu.
Call IsShortCut when processing a KeyDown message to identify shortcut keys and trigger the appropriate menu action. IsShortCut decodes the key message passed in the Message parameter. It then encodes the state of the Shift, Control, and Alt keys with the value of the character that was typed to obtain the ShortCut property of a menu item. If IsShortCut locates a menu item associated with the shortcut key combination, it calls the item's Click method and returns true. If no item in the menu has a shortcut corresponding to the message, IsShortCut returns false.
</summary></devnotes></function>
      <procedure name="ParentBiDiModeChanged" visibility="public" procflags="overload" file="Vcl.Menus.pas" line="358">
      <devnotes><summary>
Ensures that the menu's layout follows the current settings of the BiDiMode and ParentBiDiMode properties.
ParentBiDiMode changed is called when the menu's BiDiMode property must be updated to reflect the bi-directional mode of its associated control.
</summary></devnotes></procedure>
      <procedure name="ParentBiDiModeChanged" visibility="public" procflags="overload" file="Vcl.Menus.pas" line="359">
        <parameters>
          <parameter name="AControl" type="TObject"/>
        </parameters>
      <devnotes><summary>
Ensures that the menu's layout follows the current settings of the BiDiMode and ParentBiDiMode properties.
ParentBiDiMode changed is called when the menu's BiDiMode property must be updated to reflect the bi-directional mode of its associated control.
</summary></devnotes></procedure>
      <procedure name="ProcessMenuChar" visibility="public" file="Vcl.Menus.pas" line="363">
        <parameters>
          <parameter name="Message" type="TWMMenuChar" paramflags="var"/>
        </parameters>
      <devnotes><summary>
Responds to keyboard input for the menu.
ProcessMenuChar handles keyboard messages from Windows. It checks whether the character typed is an accelerator character from one of the menu's items. If so, ProcessMenuChar executes the menu item (or, if the item is disabled, selects it). If the key is not an accelerator, ProcessMenuChar checks for captions that begin with the character. If there is only one, it is treated like an accelerator. Otherwise, the first item beginning with that character is selected.
When calling ProcessMenuChar programmatically, the User, MenuFlag, and Menu fields of Message parameter must be supplied.
</summary></devnotes></procedure>
      <property name="AutoHotkeys" visibility="public" read="GetAutoHotkeys" write="SetAutoHotkeys" type="TMenuAutoFlag" default="0" file="Vcl.Menus.pas" line="365"><devnotes><summary>
Determines whether the accelerator keys for menu items can be reset automatically.
Set AutoHotkeys to indicate whether the menu should automatically ensure that accelerator keys for its items are reset if necessary so that every menu item has an accelerator key and no two items have the same accelerator key. This ensures that menu items added dynamically at runtime can have accelerator keys that do not introduce conflicts. TMenu tries to preserve all existing accelerator key mappings when adjusting the accelerator keys, but may be forced to change some in order to ensure that every item has a unique accelerator.
Before the menu is displayed, the menu checks and adjusts the accelerator key mappings if AutoHotkeys is maAutomatic. When AutoHotkeys is maManual, the menu does not alter the top-level menu items, but may adjust the accelerator keys for submenus, depending on the AutoHotkeys property of the menu item that is the parent of the submenu.
When AutoHotkeys is maManual, an application can still adjust the menu items by calling the Items property's RethinkHotkeys method. AutoHotkeys merely controls whether this adjustment occurs automatically.

Note:  The AutoHotkeys property of a menu is linked to the AutoHotkeys property of the TMenuItems object that implements its Items property. Setting one sets the other.</summary></devnotes></property>
      <property name="AutoLineReduction" visibility="public" read="GetAutoLineReduction" write="SetAutoLineReduction" type="TMenuAutoFlag" default="0" file="Vcl.Menus.pas" line="366"><devnotes><summary>
Determines whether redundant separator bars are automatically removed from the menu.
Set AutoLineReduction to indicate whether the menu should automatically ensure that the menu does not start or end with a separator bar and that two separator bars do not appear next to each other. This ensures that menus built dynamically at runtime do not have separator bars in undesired positions.
Before the menu is displayed, it removes superfluous separator bars when AutoLineReduction is maAutomatic. When AutoLineReduction is maManual, the menu does not remove separators from the top-level menu items, but may remove superfluous separators from submenus, depending on the AutoLineReduction property of the menu item that is the parent of the submenu.
When AutoLineReduction is maManual, an application can still remove superfluous separators by calling the Items property's RethinkLines method. AutoLineReduction merely determines whether this adjustment occurs automatically.

Note:  The AutoLineReduction property of a menu is linked to the AutoLineReduction property of the TMenuItems object that implements its Items property. Setting one sets the other.</summary></devnotes></property>
      <property name="BiDiMode" visibility="public" read="FBiDiMode" write="SetBiDiMode" stored="IsBiDiModeStored" type="TBiDiMode" file="Vcl.Menus.pas" line="367"><devnotes><summary>
Determines the layout of the menu in Middle East locales.
Set BiDiMode to control the layout of menu items. BiDiMode controls whether the menu items read from left to right or right to left.
</summary></devnotes></property>
      <property name="Handle" visibility="public" read="GetHandle" type="HMENU" file="Vcl.Menus.pas" line="368"><devnotes><summary>
Provides access to the Windows menu handle for the menu.
Use Handle to call a Windows API function that requires a menu handle. Handle is the handle for the menu that contains only the items described by the Items property.
</summary></devnotes></property>
      <property name="OwnerDraw" visibility="public" read="FOwnerDraw" write="SetOwnerDraw" type="Boolean" default="0" file="Vcl.Menus.pas" line="369"><devnotes><summary>
Specifies whether the menu items are drawn by the application.
Set OwnerDraw to true to indicate that the application will draw menu items in an OnDrawItem event handler. When OwnerDraw is true, menu items receive an OnMeasureItem and an OnDrawItem event when they need to be rendered on screen.
Set OwnerDraw to false to accept the default drawing. When OwnerDraw is false, menu items display the caption with an optional image to the left (If the Images and ImageIndex properties are set).
Owner-draw menus are useful for displaying the value that appears when selecting a menu item. For example, in a menu that allows users to choose a color, an owner-draw menu could display rectangles drawn in the designated color, rather than color names.
</summary></devnotes></property>
      <property name="ParentBiDiMode" visibility="public" read="FParentBiDiMode" write="SetParentBiDiMode" type="Boolean" default="1" file="Vcl.Menus.pas" line="370"><devnotes><summary>
Indicates whether the BiDiMode property is inherited from the control that uses the menu.
By default, ParentBiDiMode is true, indicating that the layout of menu items follows the BiDiMode setting of the associated form or control. Change ParentBiDiMode to false to override the default BiDiMode setting and control the menu's layout independently.
</summary></devnotes></property>
      <property name="WindowHandle" visibility="public" read="FWindowHandle" write="SetWindowHandle" type="HWND" file="Vcl.Menus.pas" line="371"><devnotes><summary>
Provides access to the handle of the window that uses the menu.
Read WindowHandle to get the window handle of the control that receives WM_COMMAND messages when the user clicks on an item in the menu. When menu items are selected, use this handle in an OnClick event handler to send messages to the control that uses the menu or to make Windows API calls that affect the control. 
Set WindowHandle to associate the menu with a control.
</summary></devnotes></property>
      <property name="Items" visibility="published" read="FItems" type="TMenuItem" file="Vcl.Menus.pas" line="373"><devnotes><summary>
Describes the elements of the menu.
Use Items to access information about the elements in the menu. Items is a single TMenuItem object that describes the elements of the menu in its own Items property.

Note:  Because Items is the default property of TMenuItem, the Items property of TMenu can be treated as an indexed array of menu items that describe the individual items in the menu. That is, instead of writing
Note:  FirstItem�:= Menu1.Items.Items[0];
Note:  you can use
Note:  FirstItem�:= Menu1.Items[0];
Set the Items property at design time by clicking on the Items property in the Property Inspector. The Menu Designer automatically inserts a menu item. As each menu item is entered, outlined regions appear at the possible locations of additional menu items. Click in those regions to specify additional menu items. At runtime, create a TMenuItem that describes the elements of the menu programmatically, and set the Items property of the menu.
</summary></devnotes></property>
    </members>
  <devnotes><summary>
TMenu is the base type for menu components such as TMainMenu and TPopupMenu.
Use TMenu as a base class when defining a component that represents a collection of menu items. TMenu introduces properties and methods to create a Windows menu that represents a set of menu items, dispatch commands associated with those menu items, and locate the help context id for any of those menu items.
</summary></devnotes></class>
  <class name="TMainMenu" file="Vcl.Menus.pas" line="376">
    <ancestor name="TMenu" namespace="Vcl.Menus">
      <methodref name="SetBiDiMode" visibility="private"/>
      <methodref name="SetOwnerDraw" visibility="private"/>
      <methodref name="SetImages" visibility="private"/>
      <methodref name="SetParentBiDiMode" visibility="private"/>
      <methodref name="SetWindowHandle" visibility="private"/>
      <methodref name="ImageListChange" visibility="private"/>
      <methodref name="IsBiDiModeStored" visibility="private"/>
      <methodref name="UpdateImage" visibility="private"/>
      <methodref name="GetAutoHotkeys" visibility="private"/>
      <methodref name="SetAutoHotkeys" visibility="private"/>
      <methodref name="GetAutoLineReduction" visibility="private"/>
      <methodref name="SetAutoLineReduction" visibility="private"/>
      <methodref name="AdjustBiDiBehavior" visibility="protected"/>
      <methodref name="DoChange" visibility="protected" procflags="virtual"/>
      <methodref name="DoBiDiModeChanged" visibility="protected"/>
      <methodref name="GetHandle" visibility="protected" procflags="virtual"/>
      <methodref name="IsOwnerDraw" visibility="protected"/>
      <methodref name="Loaded" visibility="protected" procflags="override"/>
      <methodref name="MenuChanged" visibility="protected" procflags="virtual"/>
      <methodref name="Notification" visibility="protected" procflags="override"/>
      <methodref name="SetChildOrder" visibility="protected" procflags="override"/>
      <methodref name="UpdateItems" visibility="protected"/>
      <methodref name="DoGetMenuString" visibility="protected"/>
      <eventref name="OnChange" visibility="protected"/>
      <methodref name="Create" visibility="public" procflags="constructor override"/>
      <methodref name="CreateMenuItem" visibility="public" procflags="dynamic"/>
      <methodref name="Destroy" visibility="public" procflags="destructor override"/>
      <methodref name="DispatchCommand" visibility="public"/>
      <methodref name="DispatchPopup" visibility="public"/>
      <methodref name="FindItem" visibility="public">
      </methodref>
      <methodref name="GetChildren" visibility="public" procflags="override"/>
      <methodref name="GetHelpContext" visibility="public">
      </methodref>
      <propertyref name="Images" visibility="public"/>
      <methodref name="IsRightToLeft" visibility="public"/>
      <methodref name="IsShortCut" visibility="public" procflags="dynamic"/>
      <methodref name="ParentBiDiModeChanged" visibility="public" procflags="overload"/>
      <methodref name="ParentBiDiModeChanged" visibility="public" procflags="overload"/>
      <methodref name="ProcessMenuChar" visibility="public"/>
      <propertyref name="AutoHotkeys" visibility="public"/>
      <propertyref name="AutoLineReduction" visibility="public"/>
      <propertyref name="BiDiMode" visibility="public"/>
      <propertyref name="Handle" visibility="public"/>
      <propertyref name="OwnerDraw" visibility="public"/>
      <propertyref name="ParentBiDiMode" visibility="public"/>
      <propertyref name="WindowHandle" visibility="public"/>
      <propertyref name="Items" visibility="published"/>
      <ancestor name="TComponent" namespace="System.Classes">
        <interfaces>
          <implements name="IInterfaceComponentReference"/>
          <implements name="IInterface"/>
        </interfaces>
        <methodref name="GetComObject" visibility="private">
        </methodref>
        <methodref name="GetComponent" visibility="private">
        </methodref>
        <methodref name="GetComponentCount" visibility="private">
        </methodref>
        <methodref name="GetComponentIndex" visibility="private">
        </methodref>
        <methodref name="Insert" visibility="private">
        </methodref>
        <methodref name="ReadLeft" visibility="private">
        </methodref>
        <methodref name="ReadTop" visibility="private">
        </methodref>
        <methodref name="Remove" visibility="private">
        </methodref>
        <methodref name="RemoveNotification" visibility="private">
        </methodref>
        <methodref name="SetComponentIndex" visibility="private">
        </methodref>
        <methodref name="SetReference" visibility="private">
        </methodref>
        <methodref name="WriteLeft" visibility="private">
        </methodref>
        <methodref name="WriteTop" visibility="private">
        </methodref>
        <methodref name="IntfGetComponent" visibility="private">
        </methodref>
        <methodref name="DoGetDeltaStreams" visibility="private">
        </methodref>
        <methodref name="ReadDeltaStream" visibility="private">
        </methodref>
        <methodref name="ReadDeltaState" visibility="private">
        </methodref>
        <methodref name="FindSortedComponent" visibility="private">
        </methodref>
        <methodref name="AddSortedComponent" visibility="private">
        </methodref>
        <methodref name="RemoveSortedComponent" visibility="private" procflags="inline">
        </methodref>
        <methodref name="Create@" visibility="class private" procflags="class constructor noself">
        </methodref>
        <methodref name="AsyncSchedule" visibility="protected" procflags="virtual">
        </methodref>
        <methodref name="ChangeName" visibility="protected">
        </methodref>
        <methodref name="DefineProperties" visibility="protected" procflags="override">
        </methodref>
        <methodref name="GetChildren" visibility="protected" procflags="dynamic">
        </methodref>
        <methodref name="GetChildOwner" visibility="protected" procflags="dynamic">
        </methodref>
        <methodref name="GetChildParent" visibility="protected" procflags="dynamic">
        </methodref>
        <methodref name="GetOwner" visibility="protected" procflags="override">
        </methodref>
        <methodref name="Loaded" visibility="protected" procflags="virtual">
        </methodref>
        <methodref name="Notification" visibility="protected" procflags="virtual">
        </methodref>
        <methodref name="GetDeltaStreams" visibility="protected" procflags="dynamic">
        </methodref>
        <methodref name="ReadState" visibility="protected" procflags="virtual">
        </methodref>
        <methodref name="CanObserve" visibility="protected" procflags="virtual">
        </methodref>
        <methodref name="ObserverAdded" visibility="protected" procflags="virtual">
        </methodref>
        <methodref name="GetObservers" visibility="protected" procflags="virtual">
        </methodref>
        <methodref name="SetAncestor" visibility="protected">
        </methodref>
        <methodref name="SetDesigning" visibility="protected">
        </methodref>
        <methodref name="SetInline" visibility="protected">
        </methodref>
        <methodref name="SetDesignInstance" visibility="protected">
        </methodref>
        <methodref name="SetName" visibility="protected" procflags="virtual">
        </methodref>
        <methodref name="SetChildOrder" visibility="protected" procflags="dynamic">
        </methodref>
        <methodref name="SetParentComponent" visibility="protected" procflags="dynamic">
        </methodref>
        <methodref name="Updating" visibility="protected" procflags="dynamic">
        </methodref>
        <methodref name="Updated" visibility="protected" procflags="dynamic">
        </methodref>
        <methodref name="UpdateRegistry" visibility="protected" procflags="class virtual">
        </methodref>
        <methodref name="ValidateRename" visibility="protected" procflags="virtual">
        </methodref>
        <methodref name="ValidateContainer" visibility="protected" procflags="dynamic">
        </methodref>
        <methodref name="ValidateInsert" visibility="protected" procflags="dynamic">
        </methodref>
        <methodref name="WriteState" visibility="protected" procflags="virtual">
        </methodref>
        <methodref name="RemoveFreeNotifications" visibility="protected">
        </methodref>
        <methodref name="QueryInterface" visibility="protected" procflags="virtual">
        </methodref>
        <methodref name="_AddRef" visibility="protected">
        </methodref>
        <methodref name="_Release" visibility="protected">
        </methodref>
        <methodref name="GetTypeInfoCount" visibility="protected">
        </methodref>
        <methodref name="GetTypeInfo" visibility="protected">
        </methodref>
        <methodref name="GetIDsOfNames" visibility="protected">
        </methodref>
        <methodref name="Invoke" visibility="protected">
        </methodref>
        <eventref name="OnGetDeltaStreams" visibility="protected">
        </eventref>
        <methodref name="Create" visibility="public" procflags="constructor virtual">
        </methodref>
        <methodref name="Destroy" visibility="public" procflags="destructor override">
        </methodref>
        <methodref name="BeforeDestruction" visibility="public" procflags="override">
        </methodref>
        <methodref name="BeginInvoke" visibility="public" procflags="overload">
        </methodref>
        <methodref name="BeginInvoke" visibility="public" procflags="overload">
        </methodref>
        <methodref name="BeginInvoke" visibility="public" procflags="overload">
        </methodref>
        <methodref name="BeginInvoke" visibility="public" procflags="overload">
        </methodref>
        <methodref name="BeginInvoke" visibility="public" procflags="overload">
        </methodref>
        <methodref name="BeginInvoke" visibility="public" procflags="overload">
        </methodref>
        <methodref name="BeginInvoke" visibility="public" procflags="overload">
        </methodref>
        <methodref name="BeginInvoke" visibility="public" procflags="overload">
        </methodref>
        <methodref name="EndInvoke" visibility="public" procflags="overload">
        </methodref>
        <methodref name="EndInvoke" visibility="public" procflags="overload">
        </methodref>
        <methodref name="EndFunctionInvoke" visibility="public">
        </methodref>
        <methodref name="DestroyComponents" visibility="public">
        </methodref>
        <methodref name="Destroying" visibility="public">
        </methodref>
        <methodref name="ExecuteAction" visibility="public" procflags="dynamic">
        </methodref>
        <methodref name="FindComponent" visibility="public">
        </methodref>
        <methodref name="FreeNotification" visibility="public">
        </methodref>
        <methodref name="RemoveFreeNotification" visibility="public">
        </methodref>
        <methodref name="FreeOnRelease" visibility="public">
        </methodref>
        <methodref name="GetEnumerator" visibility="public" procflags="inline">
        </methodref>
        <methodref name="GetParentComponent" visibility="public" procflags="dynamic">
        </methodref>
        <methodref name="GetNamePath" visibility="public" procflags="override">
        </methodref>
        <methodref name="HasParent" visibility="public" procflags="dynamic">
        </methodref>
        <methodref name="InsertComponent" visibility="public">
        </methodref>
        <methodref name="RemoveComponent" visibility="public">
        </methodref>
        <methodref name="SetSubComponent" visibility="public">
        </methodref>
        <methodref name="SafeCallException" visibility="public" procflags="override">
        </methodref>
        <methodref name="UpdateAction" visibility="public" procflags="virtual">
        </methodref>
        <methodref name="IsImplementorOf" visibility="public">
        </methodref>
        <methodref name="ReferenceInterface" visibility="public">
        </methodref>
        <propertyref name="ComObject" visibility="public">
        </propertyref>
        <propertyref name="Components" visibility="public">
        </propertyref>
        <propertyref name="ComponentCount" visibility="public">
        </propertyref>
        <propertyref name="ComponentIndex" visibility="public">
        </propertyref>
        <propertyref name="ComponentState" visibility="public">
        </propertyref>
        <propertyref name="ComponentStyle" visibility="public">
        </propertyref>
        <propertyref name="DesignInfo" visibility="public">
        </propertyref>
        <propertyref name="Owner" visibility="public">
        </propertyref>
        <propertyref name="VCLComObject" visibility="public">
        </propertyref>
        <propertyref name="Observers" visibility="public">
        </propertyref>
        <propertyref name="Name" visibility="published">
        </propertyref>
        <propertyref name="Tag" visibility="published">
        </propertyref>
        <ancestor name="TPersistent" namespace="System.Classes">
          <methodref name="AssignError" visibility="private">
          </methodref>
          <methodref name="AssignTo" visibility="protected" procflags="virtual">
          </methodref>
          <methodref name="DefineProperties" visibility="protected" procflags="virtual">
          </methodref>
          <methodref name="GetOwner" visibility="protected" procflags="dynamic">
          </methodref>
          <methodref name="Destroy" visibility="public" procflags="destructor override">
          </methodref>
          <methodref name="Assign" visibility="public" procflags="virtual">
          </methodref>
          <methodref name="GetNamePath" visibility="public" procflags="dynamic">
          </methodref>
          <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>
        </ancestor>
      </ancestor>
    </ancestor>
    <members>
      <field name="FOle2Menu" type="HMENU" visibility="private" size="4" offset="104" file="Vcl.Menus.pas" line="378"/>
      <field name="FAutoMerge" type="Boolean" visibility="private" size="1" offset="108" file="Vcl.Menus.pas" line="379"/>
      <procedure name="ItemChanged" visibility="private" file="Vcl.Menus.pas" line="380">
      </procedure>
      <procedure name="SetAutoMerge" visibility="private" file="Vcl.Menus.pas" line="381">
        <parameters>
          <parameter name="Value" type="Boolean"/>
        </parameters>
      </procedure>
      <procedure name="MenuChanged" visibility="protected" procflags="override" file="Vcl.Menus.pas" line="383">
        <parameters>
          <parameter name="Sender" type="TObject"/>
          <parameter name="Source" type="TMenuItem"/>
          <parameter name="Rebuild" type="Boolean"/>
        </parameters>
      <devnotes><summary>
Responds when the menu changes.
Vcl.Menus.TMainMenu.MenuChanged inherits from Vcl.Menus.TMenu.MenuChanged. All content below this line refers to Vcl.Menus.TMenu.MenuChanged.
Responds when the menu changes.
MenuChanged is called automatically when changes occur that affect the structure of the menu. The Sender parameter indicates the object that originates the change. Its value can be nil (Delphi) or NULL (C++). Source indicates which menu item is affected. Rebuild indicates whether the menu must be rebuilt to reflect the change (for example when items are added or deleted).
MenuChanged calls the DoChange method, which generates an OnChange event.

Note:  Changes that affect individual items rather than the menu as a whole trigger the UpdateItems method instead of MenuChanged. For example, when the Images property changes, UpdateItems is called rather than MenuChanged.</summary></devnotes></procedure>
      <function name="GetHandle" visibility="protected" procflags="override" file="Vcl.Menus.pas" line="384">
        <parameters>
          <retval type="HMENU"/>
        </parameters>
      <devnotes><summary>
Returns the value of the Handle property.
Vcl.Menus.TMainMenu.GetHandle inherits from Vcl.Menus.TMenu.GetHandle. All content below this line refers to Vcl.Menus.TMenu.GetHandle.
Returns the value of the Handle property.
GetHandle is the protected implementation of the Handle property. Override this method to change the implementation of the handle property. For example, TMainMenu overrides GetHandle to adjust for menus added by embedded OLE objects.
</summary></devnotes></function>
      <procedure name="Merge" visibility="public" file="Vcl.Menus.pas" line="386">
        <parameters>
          <parameter name="Menu" type="TMainMenu"/>
        </parameters>
      <devnotes><summary>
Combines the main menu of one form with the main menu of another in non-MDI applications.
Call Merge to merge another main menu with this one. Specify the menu you want merged with this menu as the Menu parameter.
For example, to use the main menu of the first form in an application as the main menu for the application, call Merge to merge the main menu of any additional forms in the application with the main menu of the first form. 
Depending on the value of the GroupIndex property of menu items on the main menu, the merged menu items can replace menu items on the menu bar, or insert menu items into the menu bar. See GroupIndex for information on how to do these things.
To merge and unmerge main menus automatically when other forms are displayed, change the value of the AutoMerge property to true on all forms whose menus should be merged in.
</summary></devnotes></procedure>
      <procedure name="Unmerge" visibility="public" file="Vcl.Menus.pas" line="387">
        <parameters>
          <parameter name="Menu" type="TMainMenu"/>
        </parameters>
      <devnotes><summary>
Reverses the merging of two menus in a non-MDI application.
Call Unmerge to remove items from another main menu that were added using the Merge method. The Menu parameter is the merged menu whose items should be removed from the main menu.
</summary></devnotes></procedure>
      <procedure name="PopulateOle2Menu" visibility="public" file="Vcl.Menus.pas" line="388">
        <devnotes><summary>
Populates an OLE menu with items from the main menu.
Call PopulateOle2Menu to merge the menu items with GroupIndex values specified by the Groups parameter into the menu that uses the SharedMenu handle. PopulateOle2Menu appends all menu items in the specified groups to the menu, and increments the corresponding entries in the Widths array for every menu item appended. PopulateOle2Menu is used by OLE containers when merging menus.

Note: PopulateOle2Menu populates the menu specified by the SharedMenu parameter but does not set this as the OLE menu associated with the menu.</summary></devnotes>
        <parameters>
          <parameter name="SharedMenu" type="HMENU"/>
          <parameter name="Groups" paramflags="const">
            <array name="Groups" file="Vcl.Menus.pas" line="4664">
              <element type="Integer"/>
            </array>
          </parameter>
          <parameter name="Widths" paramflags="var">
            <array name="Widths" file="Vcl.Menus.pas" line="4664">
              <element type="Integer"/>
            </array>
          </parameter>
        </parameters>
      </procedure>
      <procedure name="GetOle2AcceleratorTable" visibility="public" file="Vcl.Menus.pas" line="390">
        <parameters>
          <parameter name="AccelTable" type="HACCEL" paramflags="var"/>
          <parameter name="AccelCount" type="Integer" paramflags="var"/>
          <parameter name="Groups" paramflags="const">
            <array name="Groups" file="Vcl.Menus.pas" line="4562">
              <element type="Integer"/>
            </array>
          </parameter>
        </parameters>
      <devnotes><summary>
Returns the main menu's accelerator table.
Call GetOle2AcceleratorTable to obtain a handle to an accelerator table for all menu items with a GroupIndex value that appears in the Groups parameter. The AccelTable parameter is set to the accelerator table handle, and the AccelCount is set to the number of entries in the table. GetOle2AcceleratorTable is used by OLE containers when merging menus.
</summary></devnotes></procedure>
      <procedure name="SetOle2MenuHandle" visibility="public" file="Vcl.Menus.pas" line="392">
        <devnotes><summary>
Associates the handle for an OLE menu with the main menu.
Call SetOle2MenuHandle to temporarily replace the menu of a form with the menu represented by the Handle parameter. To restore the original menu, call SetOle2MenuHandle with the Handle parameter set to 0. SetOle2MenuHandle allows an OLE container to use menu items provided by an OLE server.
</summary></devnotes>
        <parameters>
          <parameter name="Handle" type="HMENU"/>
        </parameters>
      </procedure>
      <property name="AutoHotkeys" visibility="published" read="GetAutoHotkeys" write="SetAutoHotkeys" type="TMenuAutoFlag" default="0" hoisted="true" file="Vcl.Menus.pas" line="394"/>
      <property name="AutoLineReduction" visibility="published" read="GetAutoLineReduction" write="SetAutoLineReduction" type="TMenuAutoFlag" default="0" hoisted="true" file="Vcl.Menus.pas" line="395"/>
      <property name="AutoMerge" visibility="published" read="FAutoMerge" write="SetAutoMerge" type="Boolean" default="0" file="Vcl.Menus.pas" line="396"><devnotes><summary>
Determines if the main menus of secondary forms merge with the main menu of the main form in non-MDI applications at runtime.
To merge a form's menus with the main menu in the main form, set the AutoMerge property of each main menu you want merged to true. Make sure that the AutoMerge property of the main menu of the main form (the one other menus are merged into) remains false. How menus merge depends on the value of the GroupIndex property for each menu item.
If the application is an MDI application (the FormStyle properties are set so the main form is a parent form and subsequent forms are child forms), menu merging occurs automatically without using the AutoMerge property.
</summary></devnotes></property>
      <property name="BiDiMode" visibility="published" read="FBiDiMode" write="SetBiDiMode" stored="IsBiDiModeStored" type="TBiDiMode" hoisted="true" file="Vcl.Menus.pas" line="397"/>
      <property name="Images" visibility="published" read="FImages" write="SetImages" type="TCustomImageList" hoisted="true" file="Vcl.Menus.pas" line="398"/>
      <property name="OwnerDraw" visibility="published" read="FOwnerDraw" write="SetOwnerDraw" type="Boolean" default="0" hoisted="true" file="Vcl.Menus.pas" line="399"/>
      <property name="ParentBiDiMode" visibility="published" read="FParentBiDiMode" write="SetParentBiDiMode" type="Boolean" default="1" hoisted="true" file="Vcl.Menus.pas" line="400"/>
      <event name="OnChange" visibility="published" read="FOnChange" write="FOnChange" type="TMenuChangeEvent" hoisted="true" file="Vcl.Menus.pas" line="401"/>
    </members>
  <devnotes><summary>
TMainMenu encapsulates a menu bar and its accompanying drop-down menus for a form.
Use TMainMenu to provide the main menu for a form. To begin designing a menu, add a main menu to a form, and double-click the component. 
TMainMenu introduces properties and methods for merging the drop-down menus of the main menu with the main menu of another form.
TMainMenu introduces properties and methods for assisting in the menu negotiation process of an OLE container.

Tip:  To create a menu that users can configure at runtime, use the TActionMainMenuBar component with an action manager instead.</summary></devnotes></class>
  <enum name="TPopupAlignment" file="Vcl.Menus.pas" line="404">
    <element value="0" name="paLeft" file="Vcl.Menus.pas" line="404"/>
    <element value="1" name="paRight" file="Vcl.Menus.pas" line="404"/>
    <element value="2" name="paCenter" file="Vcl.Menus.pas" line="404"/>
  </enum>
  <enum name="TTrackButton" file="Vcl.Menus.pas" line="405">
    <element value="0" name="tbRightButton" file="Vcl.Menus.pas" line="405"/>
    <element value="1" name="tbLeftButton" file="Vcl.Menus.pas" line="405"/>
  </enum>
  <enum name="TMenuAnimations" file="Vcl.Menus.pas" line="406">
    <element value="0" name="maLeftToRight" file="Vcl.Menus.pas" line="406"/>
    <element value="1" name="maRightToLeft" file="Vcl.Menus.pas" line="406"/>
    <element value="2" name="maTopToBottom" file="Vcl.Menus.pas" line="406"/>
    <element value="3" name="maBottomToTop" file="Vcl.Menus.pas" line="406"/>
    <element value="4" name="maNone" file="Vcl.Menus.pas" line="406"/>
  </enum>
  <set name="TMenuAnimation" type="TMenuAnimations" file="Vcl.Menus.pas" line="407">
    <element name="maLeftToRight"/>
    <element name="maRightToLeft"/>
    <element name="maTopToBottom"/>
    <element name="maBottomToTop"/>
    <element name="maNone"/>
  </set>
  <class name="TPopupMenu" file="Vcl.Menus.pas" line="409">
    <ancestor name="TMenu" namespace="Vcl.Menus">
      <methodref name="SetBiDiMode" visibility="private"/>
      <methodref name="SetOwnerDraw" visibility="private"/>
      <methodref name="SetImages" visibility="private"/>
      <methodref name="SetParentBiDiMode" visibility="private"/>
      <methodref name="SetWindowHandle" visibility="private"/>
      <methodref name="ImageListChange" visibility="private"/>
      <methodref name="IsBiDiModeStored" visibility="private"/>
      <methodref name="UpdateImage" visibility="private"/>
      <methodref name="GetAutoHotkeys" visibility="private"/>
      <methodref name="SetAutoHotkeys" visibility="private"/>
      <methodref name="GetAutoLineReduction" visibility="private"/>
      <methodref name="SetAutoLineReduction" visibility="private"/>
      <methodref name="AdjustBiDiBehavior" visibility="protected"/>
      <methodref name="DoChange" visibility="protected" procflags="virtual"/>
      <methodref name="DoBiDiModeChanged" visibility="protected"/>
      <methodref name="GetHandle" visibility="protected" procflags="virtual"/>
      <methodref name="IsOwnerDraw" visibility="protected"/>
      <methodref name="Loaded" visibility="protected" procflags="override"/>
      <methodref name="MenuChanged" visibility="protected" procflags="virtual"/>
      <methodref name="Notification" visibility="protected" procflags="override"/>
      <methodref name="SetChildOrder" visibility="protected" procflags="override"/>
      <methodref name="UpdateItems" visibility="protected"/>
      <methodref name="DoGetMenuString" visibility="protected"/>
      <eventref name="OnChange" visibility="protected"/>
      <methodref name="Create" visibility="public" procflags="constructor override"/>
      <methodref name="CreateMenuItem" visibility="public" procflags="dynamic"/>
      <methodref name="Destroy" visibility="public" procflags="destructor override"/>
      <methodref name="DispatchCommand" visibility="public"/>
      <methodref name="DispatchPopup" visibility="public"/>
      <methodref name="FindItem" visibility="public">
      </methodref>
      <methodref name="GetChildren" visibility="public" procflags="override"/>
      <methodref name="GetHelpContext" visibility="public">
      </methodref>
      <propertyref name="Images" visibility="public"/>
      <methodref name="IsRightToLeft" visibility="public"/>
      <methodref name="IsShortCut" visibility="public" procflags="dynamic"/>
      <methodref name="ParentBiDiModeChanged" visibility="public" procflags="overload"/>
      <methodref name="ParentBiDiModeChanged" visibility="public" procflags="overload"/>
      <methodref name="ProcessMenuChar" visibility="public"/>
      <propertyref name="AutoHotkeys" visibility="public"/>
      <propertyref name="AutoLineReduction" visibility="public"/>
      <propertyref name="BiDiMode" visibility="public"/>
      <propertyref name="Handle" visibility="public"/>
      <propertyref name="OwnerDraw" visibility="public"/>
      <propertyref name="ParentBiDiMode" visibility="public"/>
      <propertyref name="WindowHandle" visibility="public"/>
      <propertyref name="Items" visibility="published"/>
      <ancestor name="TComponent" namespace="System.Classes">
        <interfaces>
          <implements name="IInterfaceComponentReference"/>
          <implements name="IInterface"/>
        </interfaces>
        <methodref name="GetComObject" visibility="private">
        </methodref>
        <methodref name="GetComponent" visibility="private">
        </methodref>
        <methodref name="GetComponentCount" visibility="private">
        </methodref>
        <methodref name="GetComponentIndex" visibility="private">
        </methodref>
        <methodref name="Insert" visibility="private">
        </methodref>
        <methodref name="ReadLeft" visibility="private">
        </methodref>
        <methodref name="ReadTop" visibility="private">
        </methodref>
        <methodref name="Remove" visibility="private">
        </methodref>
        <methodref name="RemoveNotification" visibility="private">
        </methodref>
        <methodref name="SetComponentIndex" visibility="private">
        </methodref>
        <methodref name="SetReference" visibility="private">
        </methodref>
        <methodref name="WriteLeft" visibility="private">
        </methodref>
        <methodref name="WriteTop" visibility="private">
        </methodref>
        <methodref name="IntfGetComponent" visibility="private">
        </methodref>
        <methodref name="DoGetDeltaStreams" visibility="private">
        </methodref>
        <methodref name="ReadDeltaStream" visibility="private">
        </methodref>
        <methodref name="ReadDeltaState" visibility="private">
        </methodref>
        <methodref name="FindSortedComponent" visibility="private">
        </methodref>
        <methodref name="AddSortedComponent" visibility="private">
        </methodref>
        <methodref name="RemoveSortedComponent" visibility="private" procflags="inline">
        </methodref>
        <methodref name="Create@" visibility="class private" procflags="class constructor noself">
        </methodref>
        <methodref name="AsyncSchedule" visibility="protected" procflags="virtual">
        </methodref>
        <methodref name="ChangeName" visibility="protected">
        </methodref>
        <methodref name="DefineProperties" visibility="protected" procflags="override">
        </methodref>
        <methodref name="GetChildren" visibility="protected" procflags="dynamic">
        </methodref>
        <methodref name="GetChildOwner" visibility="protected" procflags="dynamic">
        </methodref>
        <methodref name="GetChildParent" visibility="protected" procflags="dynamic">
        </methodref>
        <methodref name="GetOwner" visibility="protected" procflags="override">
        </methodref>
        <methodref name="Loaded" visibility="protected" procflags="virtual">
        </methodref>
        <methodref name="Notification" visibility="protected" procflags="virtual">
        </methodref>
        <methodref name="GetDeltaStreams" visibility="protected" procflags="dynamic">
        </methodref>
        <methodref name="ReadState" visibility="protected" procflags="virtual">
        </methodref>
        <methodref name="CanObserve" visibility="protected" procflags="virtual">
        </methodref>
        <methodref name="ObserverAdded" visibility="protected" procflags="virtual">
        </methodref>
        <methodref name="GetObservers" visibility="protected" procflags="virtual">
        </methodref>
        <methodref name="SetAncestor" visibility="protected">
        </methodref>
        <methodref name="SetDesigning" visibility="protected">
        </methodref>
        <methodref name="SetInline" visibility="protected">
        </methodref>
        <methodref name="SetDesignInstance" visibility="protected">
        </methodref>
        <methodref name="SetName" visibility="protected" procflags="virtual">
        </methodref>
        <methodref name="SetChildOrder" visibility="protected" procflags="dynamic">
        </methodref>
        <methodref name="SetParentComponent" visibility="protected" procflags="dynamic">
        </methodref>
        <methodref name="Updating" visibility="protected" procflags="dynamic">
        </methodref>
        <methodref name="Updated" visibility="protected" procflags="dynamic">
        </methodref>
        <methodref name="UpdateRegistry" visibility="protected" procflags="class virtual">
        </methodref>
        <methodref name="ValidateRename" visibility="protected" procflags="virtual">
        </methodref>
        <methodref name="ValidateContainer" visibility="protected" procflags="dynamic">
        </methodref>
        <methodref name="ValidateInsert" visibility="protected" procflags="dynamic">
        </methodref>
        <methodref name="WriteState" visibility="protected" procflags="virtual">
        </methodref>
        <methodref name="RemoveFreeNotifications" visibility="protected">
        </methodref>
        <methodref name="QueryInterface" visibility="protected" procflags="virtual">
        </methodref>
        <methodref name="_AddRef" visibility="protected">
        </methodref>
        <methodref name="_Release" visibility="protected">
        </methodref>
        <methodref name="GetTypeInfoCount" visibility="protected">
        </methodref>
        <methodref name="GetTypeInfo" visibility="protected">
        </methodref>
        <methodref name="GetIDsOfNames" visibility="protected">
        </methodref>
        <methodref name="Invoke" visibility="protected">
        </methodref>
        <eventref name="OnGetDeltaStreams" visibility="protected">
        </eventref>
        <methodref name="Create" visibility="public" procflags="constructor virtual">
        </methodref>
        <methodref name="Destroy" visibility="public" procflags="destructor override">
        </methodref>
        <methodref name="BeforeDestruction" visibility="public" procflags="override">
        </methodref>
        <methodref name="BeginInvoke" visibility="public" procflags="overload">
        </methodref>
        <methodref name="BeginInvoke" visibility="public" procflags="overload">
        </methodref>
        <methodref name="BeginInvoke" visibility="public" procflags="overload">
        </methodref>
        <methodref name="BeginInvoke" visibility="public" procflags="overload">
        </methodref>
        <methodref name="BeginInvoke" visibility="public" procflags="overload">
        </methodref>
        <methodref name="BeginInvoke" visibility="public" procflags="overload">
        </methodref>
        <methodref name="BeginInvoke" visibility="public" procflags="overload">
        </methodref>
        <methodref name="BeginInvoke" visibility="public" procflags="overload">
        </methodref>
        <methodref name="EndInvoke" visibility="public" procflags="overload">
        </methodref>
        <methodref name="EndInvoke" visibility="public" procflags="overload">
        </methodref>
        <methodref name="EndFunctionInvoke" visibility="public">
        </methodref>
        <methodref name="DestroyComponents" visibility="public">
        </methodref>
        <methodref name="Destroying" visibility="public">
        </methodref>
        <methodref name="ExecuteAction" visibility="public" procflags="dynamic">
        </methodref>
        <methodref name="FindComponent" visibility="public">
        </methodref>
        <methodref name="FreeNotification" visibility="public">
        </methodref>
        <methodref name="RemoveFreeNotification" visibility="public">
        </methodref>
        <methodref name="FreeOnRelease" visibility="public">
        </methodref>
        <methodref name="GetEnumerator" visibility="public" procflags="inline">
        </methodref>
        <methodref name="GetParentComponent" visibility="public" procflags="dynamic">
        </methodref>
        <methodref name="GetNamePath" visibility="public" procflags="override">
        </methodref>
        <methodref name="HasParent" visibility="public" procflags="dynamic">
        </methodref>
        <methodref name="InsertComponent" visibility="public">
        </methodref>
        <methodref name="RemoveComponent" visibility="public">
        </methodref>
        <methodref name="SetSubComponent" visibility="public">
        </methodref>
        <methodref name="SafeCallException" visibility="public" procflags="override">
        </methodref>
        <methodref name="UpdateAction" visibility="public" procflags="virtual">
        </methodref>
        <methodref name="IsImplementorOf" visibility="public">
        </methodref>
        <methodref name="ReferenceInterface" visibility="public">
        </methodref>
        <propertyref name="ComObject" visibility="public">
        </propertyref>
        <propertyref name="Components" visibility="public">
        </propertyref>
        <propertyref name="ComponentCount" visibility="public">
        </propertyref>
        <propertyref name="ComponentIndex" visibility="public">
        </propertyref>
        <propertyref name="ComponentState" visibility="public">
        </propertyref>
        <propertyref name="ComponentStyle" visibility="public">
        </propertyref>
        <propertyref name="DesignInfo" visibility="public">
        </propertyref>
        <propertyref name="Owner" visibility="public">
        </propertyref>
        <propertyref name="VCLComObject" visibility="public">
        </propertyref>
        <propertyref name="Observers" visibility="public">
        </propertyref>
        <propertyref name="Name" visibility="published">
        </propertyref>
        <propertyref name="Tag" visibility="published">
        </propertyref>
        <ancestor name="TPersistent" namespace="System.Classes">
          <methodref name="AssignError" visibility="private">
          </methodref>
          <methodref name="AssignTo" visibility="protected" procflags="virtual">
          </methodref>
          <methodref name="DefineProperties" visibility="protected" procflags="virtual">
          </methodref>
          <methodref name="GetOwner" visibility="protected" procflags="dynamic">
          </methodref>
          <methodref name="Destroy" visibility="public" procflags="destructor override">
          </methodref>
          <methodref name="Assign" visibility="public" procflags="virtual">
          </methodref>
          <methodref name="GetNamePath" visibility="public" procflags="dynamic">
          </methodref>
          <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>
        </ancestor>
      </ancestor>
    </ancestor>
    <members>
      <field name="FPopupPoint" type="TPoint" visibility="private" size="8" offset="104" file="Vcl.Menus.pas" line="411"/>
      <field name="FAlignment" type="TPopupAlignment" visibility="private" size="1" offset="112" file="Vcl.Menus.pas" line="412"/>
      <field name="FAutoPopup" type="Boolean" visibility="private" size="1" offset="113" file="Vcl.Menus.pas" line="413"/>
      <field name="FPopupComponent" type="TComponent" visibility="private" size="4" offset="116" file="Vcl.Menus.pas" line="414"/>
      <field name="FTrackButton" type="TTrackButton" visibility="private" size="1" offset="120" file="Vcl.Menus.pas" line="415"/>
      <field name="FMenuAnimation" type="TMenuAnimation" visibility="private" size="1" offset="121" file="Vcl.Menus.pas" line="416"/>
      <field name="FOnPopup" type="TNotifyEvent" visibility="private" size="8" offset="128" file="Vcl.Menus.pas" line="417"/>
      <field name="FOnClose" type="TNotifyEvent" visibility="private" size="8" offset="136" file="Vcl.Menus.pas" line="418"/>
      <function name="GetHelpContext" visibility="private" file="Vcl.Menus.pas" line="419">
        <parameters>
          <retval type="THelpContext"/>
        </parameters>
      </function>
      <procedure name="SetHelpContext" visibility="private" file="Vcl.Menus.pas" line="420">
        <parameters>
          <parameter name="Value" type="THelpContext"/>
        </parameters>
      </procedure>
      <procedure name="SetBiDiModeFromPopupControl" visibility="private" file="Vcl.Menus.pas" line="421">
      </procedure>
      <function name="UseRightToLeftAlignment" visibility="protected" file="Vcl.Menus.pas" line="423">
        <parameters>
          <retval type="Boolean"/>
        </parameters>
      <devnotes><summary>
Specifies whether the control's alignment is in a right-to-left mode.
Call UseRightToLeftAlignment to determine whether the control's alignment is in a right-to-left mode. This information can be used when painting the control or when responding to mouse events.
UseRightToLeftAlignment returns the setting from the control that activated the popup. If the popup was not activated by a control, UseRightToLeftAlignment returns the setting used in the global Application object.


</summary></devnotes></function>
      <procedure name="DoClose" visibility="protected" procflags="virtual" file="Vcl.Menus.pas" line="424">
      <devnotes><summary>
Embarcadero Technologies does not currently have any additional information.


</summary></devnotes></procedure>
      <procedure name="DoPopup" visibility="protected" procflags="virtual" file="Vcl.Menus.pas" line="425">
        <parameters>
          <parameter name="Sender" type="TObject"/>
        </parameters>
      <devnotes><summary>
Generates an OnPopup event.
DoPopup is called automatically just before the pop-up menu appears to generate an OnPopup event. Override DoPopup in a descendant class to change the event.
</summary></devnotes></procedure>
      <procedure name="SetPopupPoint" visibility="protected" file="Vcl.Menus.pas" line="426">
        <parameters>
          <parameter name="APopupPoint" type="TPoint"/>
        </parameters>
      <devnotes><summary>
Used to set starting point coordinates.
SetPopupPoint is used internally to set the coordinates of the point where the pop-up menu will appear. 
</summary></devnotes></procedure>
      <constructor name="Create" visibility="public" file="Vcl.Menus.pas" line="428">
        <parameters>
          <parameter name="AOwner" type="TComponent"/>
        </parameters>
      <devnotes><summary>
Creates an instance of TPopupMenu.
Call Create to create to create a pop-up menu at runtime. Pop-up menus placed in forms or data modules at design time are created automatically.
</summary></devnotes></constructor>
      <destructor name="Destroy" visibility="public" file="Vcl.Menus.pas" line="429">
        <parameters>
        </parameters>
      <devnotes><summary>
Destroys an instance of TPopupMenu.
Do not call Destroy directly in an application. Instead, call Free. Free verifies that the TPopupMenu reference is not nil, and only then calls Destroy.
</summary></devnotes></destructor>
      <procedure name="CloseMenu" visibility="public" procflags="inline" file="Vcl.Menus.pas" line="430">
      <devnotes><summary>
Closes the pop-up menu onscreen.
Call CloseMenu to close the pop-up menu. 
</summary></devnotes></procedure>
      <procedure name="Popup" visibility="public" procflags="virtual" file="Vcl.Menus.pas" line="431">
        <parameters>
          <parameter name="X" type="Integer"/>
          <parameter name="Y" type="Integer"/>
        </parameters>
      <devnotes><summary>
Displays the pop-up menu onscreen.
Call Popup to bring up the pop-up menu. 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="Vcl.Menus.pas" line="432"><devnotes><summary>
Indicates the component that last displayed the popup menu in response to a right mouse click.
Read PopupComponent to determine which control is currently using the popup menu. In applications where multiple controls share the same pop-up menu, use PopupComponent to determine which of them displayed the menu.
Set PopupComponent to associate a control with the menu before calling the Popup method programmatically to bring up the pop-up menu.
</summary></devnotes></property>
      <property name="PopupPoint" visibility="public" read="FPopupPoint" type="TPoint" file="Vcl.Menus.pas" line="433"><devnotes><summary>
Indicates the location where the pop-up menu appears.
This public property is used internally to locate the popup menu. Its value is set by the Popup method.
</summary></devnotes></property>
      <property name="Alignment" visibility="published" read="FAlignment" write="FAlignment" type="TPopupAlignment" default="0" file="Vcl.Menus.pas" line="435"><devnotes><summary>
Determines where the pop-up menu appears when the user clicks the right mouse button.
Set Alignment to control the placement of the popup menu. Alignment controls whether the menu appears to the left of the mouse, to the right of the mouse, or centered over the mouse.
By default, the menu appears with its top left corner under the mouse (paLeft).
</summary></devnotes></property>
      <property name="AutoHotkeys" visibility="published" read="GetAutoHotkeys" write="SetAutoHotkeys" type="TMenuAutoFlag" default="0" hoisted="true" file="Vcl.Menus.pas" line="436"/>
      <property name="AutoLineReduction" visibility="published" read="GetAutoLineReduction" write="SetAutoLineReduction" type="TMenuAutoFlag" default="0" hoisted="true" file="Vcl.Menus.pas" line="437"/>
      <property name="AutoPopup" visibility="published" read="FAutoPopup" write="FAutoPopup" type="Boolean" default="1" file="Vcl.Menus.pas" line="438"><devnotes><summary>
Determines whether the pop-up menu appears automatically when the user clicks the right mouse button.
Set AutoPopup to true to cause the pop-up menu to appear automatically when the user clicks the right mouse button on a control that has the pop-up menu specified as its PopupMenu property. The application key present on keyboards specifically designed for 32-bit Windows will also show this menu when pressed.
Set AutoPopup to false if the appearance of the pop-up menu should be controlled programmatically. To display a pop-up menu when AutoPopup is false, use the Popup method.
</summary></devnotes></property>
      <property name="BiDiMode" visibility="published" read="FBiDiMode" write="SetBiDiMode" stored="IsBiDiModeStored" type="TBiDiMode" hoisted="true" file="Vcl.Menus.pas" line="439"/>
      <property name="HelpContext" visibility="published" read="GetHelpContext" write="SetHelpContext" type="THelpContext" default="0" file="Vcl.Menus.pas" line="440"><devnotes><summary>
Specifies a context ID for the entire pop-up menu.
Use HelpContext to associate a help screen with the entire pop-up menu. Each screen in the Help system should have a unique context ID. When a component is selected in the application, pressing F1 displays the Help screen associated with the value of HelpContext.
To associate a help screen with the individual items in the pop-up menu, use the HelpContext property of the associated TMenuItem objects.
</summary></devnotes></property>
      <property name="Images" visibility="published" read="FImages" write="SetImages" type="TCustomImageList" hoisted="true" file="Vcl.Menus.pas" line="441"/>
      <property name="MenuAnimation" visibility="published" read="FMenuAnimation" write="FMenuAnimation" type="TMenuAnimation" default="0" file="Vcl.Menus.pas" line="442"><devnotes><summary>
Specifies how the menu appears when it is first displayed.
Use MenuAnimation to specify how the popup menu appears on the screen. The menu can simply appear as a whole, or can slide into view like a window shade being drawn from any edge.

Note: MenuAnimation only has an effect when running on Windows 98, NT 5.0, or later.</summary></devnotes></property>
      <property name="OwnerDraw" visibility="published" read="FOwnerDraw" write="SetOwnerDraw" type="Boolean" default="0" hoisted="true" file="Vcl.Menus.pas" line="443"/>
      <property name="ParentBiDiMode" visibility="published" read="FParentBiDiMode" write="SetParentBiDiMode" type="Boolean" default="1" hoisted="true" file="Vcl.Menus.pas" line="444"/>
      <property name="TrackButton" visibility="published" read="FTrackButton" write="FTrackButton" type="TTrackButton" default="0" file="Vcl.Menus.pas" line="445"><devnotes><summary>
Specifies which mouse button activates the popup menu when it is associated with a toolbar button.
Use TrackButton to specify which mouse button activates the popup menu when it is associated with a toolbar button.


</summary></devnotes></property>
      <event name="OnChange" visibility="published" read="FOnChange" write="FOnChange" type="TMenuChangeEvent" hoisted="true" file="Vcl.Menus.pas" line="446"/>
      <event name="OnClose" visibility="published" read="FOnClose" write="FOnClose" type="TNotifyEvent" file="Vcl.Menus.pas" line="447"><devnotes><summary>
Embarcadero Technologies does not currently have any additional information.


</summary></devnotes></event>
      <event name="OnPopup" visibility="published" read="FOnPopup" write="FOnPopup" type="TNotifyEvent" file="Vcl.Menus.pas" line="448"><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>
    </members>
  <devnotes><summary>
TPopupMenu encapsulates the properties, methods, and events of a pop-up menu.
Use TPopupMenu to define the pop-up menu that appears when the user clicks on a control with the right mouse button. To make a pop-up menu available, assign the TPopupMenu object to the control's PopupMenu property.

Tip:  To create a popup menu that users can configure at runtime, use the TStandardMenuPopup component with an action manager instead.
Note:  If the popup menu's ParentBiDiMode is true, the popup menu's BiDiMode is set to the BiDiMode of the control that activates it. If a control cannot be found, the BiDiMode is set to the value of the Application object's BiDiMode. The popup menu's BiDiMode affects all of its menu items.</summary></devnotes></class>
  <class name="TPopupList" file="Vcl.Menus.pas" line="451">
    <ancestor name="TList" namespace="System.Classes">
      <methodref name="Get" visibility="protected">
      </methodref>
      <methodref name="Grow" visibility="protected" procflags="virtual">
      </methodref>
      <methodref name="Put" visibility="protected">
      </methodref>
      <methodref name="Notify" visibility="protected" procflags="virtual">
      </methodref>
      <methodref name="SetCapacity" visibility="protected">
      </methodref>
      <methodref name="SetCount" visibility="protected">
      </methodref>
      <methodref name="Destroy" visibility="public" procflags="destructor override">
      </methodref>
      <methodref name="Add" visibility="public">
      </methodref>
      <methodref name="Clear" visibility="public" procflags="virtual">
      </methodref>
      <methodref name="Delete" visibility="public">
      </methodref>
      <methodref name="Error" visibility="public" procflags="class overload virtual">
      </methodref>
      <methodref name="Error" visibility="public" procflags="class overload">
      </methodref>
      <methodref name="Exchange" visibility="public">
      </methodref>
      <methodref name="Expand" visibility="public">
      </methodref>
      <methodref name="Extract" visibility="public" procflags="inline">
      </methodref>
      <methodref name="ExtractItem" visibility="public">
      </methodref>
      <methodref name="First" visibility="public" procflags="inline">
      </methodref>
      <methodref name="GetEnumerator" visibility="public" procflags="inline">
      </methodref>
      <methodref name="IndexOf" visibility="public">
      </methodref>
      <methodref name="IndexOfItem" visibility="public">
      </methodref>
      <methodref name="Insert" visibility="public">
      </methodref>
      <methodref name="Last" visibility="public">
      </methodref>
      <methodref name="Move" visibility="public">
      </methodref>
      <methodref name="Remove" visibility="public" procflags="inline">
      </methodref>
      <methodref name="RemoveItem" visibility="public">
      </methodref>
      <methodref name="Pack" visibility="public">
      </methodref>
      <methodref name="Sort" visibility="public">
      </methodref>
      <methodref name="SortList" visibility="public">
      </methodref>
      <methodref name="Assign" visibility="public">
      </methodref>
      <propertyref name="Capacity" visibility="public">
      </propertyref>
      <propertyref name="Count" visibility="public">
      </propertyref>
      <propertyref name="Items" visibility="public">
      </propertyref>
      <propertyref name="List" visibility="public">
      </propertyref>
      <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>
    </ancestor>
    <members>
      <field name="FWindow" type="HWND" visibility="protected" size="4" offset="16" file="Vcl.Menus.pas" line="453"/>
      <procedure name="MainWndProc" visibility="protected" file="Vcl.Menus.pas" line="454">
        <parameters>
          <parameter name="Message" type="TMessage" paramflags="var"/>
        </parameters>
      </procedure>
      <procedure name="WndProc" visibility="protected" procflags="virtual" file="Vcl.Menus.pas" line="455">
        <parameters>
          <parameter name="Message" type="TMessage" paramflags="var"/>
        </parameters>
      </procedure>
      <property name="Window" visibility="public" read="FWindow" type="HWND" file="Vcl.Menus.pas" line="457"/>
      <procedure name="Add" visibility="public" file="Vcl.Menus.pas" line="458">
        <parameters>
          <parameter name="Popup" type="TPopupMenu"/>
        </parameters>
      </procedure>
      <procedure name="Remove" visibility="public" file="Vcl.Menus.pas" line="459">
        <parameters>
          <parameter name="Popup" type="TPopupMenu"/>
        </parameters>
      </procedure>
    </members>
  </class>
  <pointer name="PMenuItem" type="TMenuItem" indircnt="1" file="Vcl.Menus.pas" line="463"/>
  <class name="TMenuItemStack" file="Vcl.Menus.pas" line="466">
    <ancestor name="TStack" namespace="System.Contnrs">
      <methodref name="PushItem" visibility="protected" procflags="override">
      </methodref>
      <ancestor name="TOrderedList" namespace="System.Contnrs">
        <methodref name="PushItem" visibility="protected" procflags="abstract virtual">
        </methodref>
        <methodref name="PopItem" visibility="protected" procflags="virtual">
        </methodref>
        <methodref name="PeekItem" visibility="protected" procflags="virtual">
        </methodref>
        <propertyref name="List" visibility="protected">
        </propertyref>
        <methodref name="Create" visibility="public" procflags="constructor">
        </methodref>
        <methodref name="Destroy" visibility="public" procflags="destructor override">
        </methodref>
        <methodref name="Count" visibility="public">
        </methodref>
        <methodref name="AtLeast" visibility="public">
        </methodref>
        <methodref name="Push" visibility="public">
        </methodref>
        <methodref name="Pop" visibility="public" procflags="inline">
        </methodref>
        <methodref name="Peek" visibility="public" procflags="inline">
        </methodref>
        <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>
      </ancestor>
    </ancestor>
    <members>
      <procedure name="ClearItem" visibility="public" file="Vcl.Menus.pas" line="468">
        <parameters>
          <parameter name="AItem" type="TMenuItem"/>
        </parameters>
      </procedure>
    </members>
  </class>
  <variable name="PopupList" type="TPopupList" file="Vcl.Menus.pas" line="472"/>
  <variable name="ShortCutItems" type="TMenuItemStack" file="Vcl.Menus.pas" line="473"/>
  <variable name="ValidMenuHotkeys" type="string" visibility="public" file="Vcl.Menus.pas" line="499"/>
  <const name="cHotkeyPrefix" type="Char" file="Vcl.Menus.pas" line="502">
    <value>
      $26
    </value>
  </const>
  <const name="cLineCaption" type="Char" file="Vcl.Menus.pas" line="503">
    <value>
      $2D
    </value>
  </const>
  <const name="cDialogSuffix" type="string" file="Vcl.Menus.pas" line="504">
    <value>
      ...
    </value>
  </const>
  <function name="ShortCut" visibility="public" file="Vcl.Menus.pas" line="570">
    <parameters>
      <parameter name="Key" type="Word"/>
      <parameter name="Shift" type="TShiftState"/>
      <retval type="TShortCut"/>
    </parameters>
  </function>
  <procedure name="ShortCutToKey" visibility="public" file="Vcl.Menus.pas" line="580">
    <parameters>
      <parameter name="ShortCut" type="TShortCut"/>
      <parameter name="Key" type="Word" paramflags="var"/>
      <parameter name="Shift" type="TShiftState" paramflags="var"/>
    </parameters>
  </procedure>
  <function name="ShortCutToText" visibility="public" file="Vcl.Menus.pas" line="626">
    <parameters>
      <parameter name="ShortCut" type="TShortCut"/>
      <retval type="string"/>
    </parameters>
  </function>
  <function name="TextToShortCut" visibility="public" file="Vcl.Menus.pas" line="661">
    <parameters>
      <parameter name="Text" type="string"/>
      <retval type="TShortCut"/>
    </parameters>
  </function>
  <function name="IsAltGRPressed" visibility="public" file="Vcl.Menus.pas" line="3631">
    <parameters>
      <retval type="Boolean"/>
    </parameters>
  </function>
  <function name="ShortCutFromMessage" visibility="public" file="Vcl.Menus.pas" line="3754">
    <parameters>
      <parameter name="Message" type="TWMKey"/>
      <retval type="TShortCut"/>
    </parameters>
  </function>
  <function name="NewMenu" visibility="public" file="Vcl.Menus.pas" line="5069">
    <parameters>
      <parameter name="Owner" type="TComponent"/>
      <parameter name="AName" type="string" paramflags="const"/>
      <parameter name="Items" paramflags="const">
        <array name="Items" file="Vcl.Menus.pas" line="5069">
          <element type="TMenuItem"/>
        </array>
      </parameter>
      <retval type="TMainMenu"/>
    </parameters>
  </function>
  <function name="NewPopupMenu" visibility="public" file="Vcl.Menus.pas" line="5077">
    <parameters>
      <parameter name="Owner" type="TComponent"/>
      <parameter name="AName" type="string" paramflags="const"/>
      <parameter name="Alignment" type="TPopupAlignment"/>
      <parameter name="AutoPopup" type="Boolean"/>
      <parameter name="Items" paramflags="const">
        <array name="Items" file="Vcl.Menus.pas" line="5077">
          <element type="TMenuItem"/>
        </array>
      </parameter>
      <retval type="TPopupMenu"/>
    </parameters>
  </function>
  <function name="NewSubMenu" visibility="public" file="Vcl.Menus.pas" line="5087">
    <parameters>
      <parameter name="ACaption" type="string" paramflags="const"/>
      <parameter name="hCtx" type="THelpContext"/>
      <parameter name="AName" type="string" paramflags="const"/>
      <parameter name="Items" paramflags="const">
        <array name="Items" file="Vcl.Menus.pas" line="5087">
          <element type="TMenuItem"/>
        </array>
      </parameter>
      <parameter name="AEnabled" type="Boolean">
        <value>
          True
        </value>
      </parameter>
      <retval type="TMenuItem"/>
    </parameters>
  </function>
  <function name="NewItem" visibility="public" file="Vcl.Menus.pas" line="5102">
    <parameters>
      <parameter name="ACaption" type="string" paramflags="const"/>
      <parameter name="AShortCut" type="TShortCut"/>
      <parameter name="AChecked" type="Boolean"/>
      <parameter name="AEnabled" type="Boolean"/>
      <parameter name="AOnClick" type="TNotifyEvent"/>
      <parameter name="hCtx" type="THelpContext"/>
      <parameter name="AName" type="string" paramflags="const"/>
      <retval type="TMenuItem"/>
    </parameters>
  </function>
  <function name="NewLine" visibility="public" file="Vcl.Menus.pas" line="5117">
    <parameters>
      <retval type="TMenuItem"/>
    </parameters>
  </function>
  <procedure name="DrawMenuItem" visibility="public" file="Vcl.Menus.pas" line="5124">
    <parameters>
      <parameter name="MenuItem" type="TMenuItem"/>
      <parameter name="ACanvas" type="TCanvas"/>
      <parameter name="ARect" type="TRect"/>
      <parameter name="State" type="TOwnerDrawState"/>
    </parameters>
  </procedure>
  <function name="StripHotkey" visibility="public" file="Vcl.Menus.pas" line="5154">
    <parameters>
      <parameter name="Text" type="string" paramflags="const"/>
      <retval type="string"/>
    </parameters>
  </function>
  <function name="GetHotkey" visibility="public" file="Vcl.Menus.pas" line="5178">
    <parameters>
      <parameter name="Text" type="string" paramflags="const"/>
      <retval type="string"/>
    </parameters>
  </function>
  <function name="SameCaption" visibility="public" file="Vcl.Menus.pas" line="5202">
    <parameters>
      <parameter name="Text1" type="string" paramflags="const"/>
      <parameter name="Text2" type="string" paramflags="const"/>
      <retval type="Boolean"/>
    </parameters>
  </function>
  <function name="AnsiSameCaption" visibility="public" file="Vcl.Menus.pas" line="5208">
    <parameters>
      <parameter name="Text1" type="string" paramflags="const"/>
      <parameter name="Text2" type="string" paramflags="const"/>
      <retval type="Boolean"/>
    </parameters>
  </function>
</namespace>